mirror of
https://github.com/zhufuyi/sponge.git
synced 2025-10-06 17:26:58 +08:00
support mongodb generate code
This commit is contained in:
@@ -52,6 +52,9 @@ func (a *Args) checkValid() error {
|
||||
return fmt.Errorf("sqlite db file %s not found in local host", a.DBDsn)
|
||||
}
|
||||
}
|
||||
if a.fieldTypes == nil {
|
||||
a.fieldTypes = make(map[string]string)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -87,13 +90,21 @@ func getSQL(args *Args) (string, map[string]string, error) {
|
||||
if err != nil {
|
||||
return "", nil, err
|
||||
}
|
||||
sqlStr, pgTypeMap := parser.ConvertToMysqlTable(args.DBTable, fields)
|
||||
sqlStr, pgTypeMap := parser.ConvertToSQLByPgFields(args.DBTable, fields)
|
||||
return sqlStr, pgTypeMap, nil
|
||||
case parser.DBDriverSqlite:
|
||||
sqlStr, err := parser.GetSqliteTableInfo(args.DBDsn, args.DBTable)
|
||||
return sqlStr, nil, err
|
||||
case parser.DBDriverMongodb:
|
||||
dsn := utils.AdaptiveMongodbDsn(args.DBDsn)
|
||||
fields, err := parser.GetMongodbTableInfo(dsn, args.DBTable)
|
||||
if err != nil {
|
||||
return "", nil, err
|
||||
}
|
||||
sqlStr, mongoTypeMap := parser.ConvertToSQLByMgoFields(args.DBTable, fields)
|
||||
return sqlStr, mongoTypeMap, nil
|
||||
default:
|
||||
return "", nil, fmt.Errorf("unsupported database driver: " + dbDriverName)
|
||||
return "", nil, fmt.Errorf("getsql error, unsupported database driver: " + dbDriverName)
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user