feat: 支持 Option<T> 字段(None↔NULL)、列命名默认原样(Keep)、迁移同名列先删后加,版本 1.1.0
This commit is contained in:
1 parent
132aae865b
commit
394c4a1fb5
14 files changed
+335
-87
No files matched your search
@@ -20,7 +20,7 @@ import std.database.sql.*
|
||||
*/
|
||||
public class DatasourceFactory {
|
||||
/// 默认驱动名(ADO 风格连接串无 scheme 时使用)
|
||||
public static let DEFAULT_DRIVER = "postgres"
|
||||
public static let DEFAULT_DRIVER: String = "postgres"
|
||||
|
||||
/**
|
||||
* 由连接字符串创建 Datasource。驱动名自动推断:
|
||||
@@ -88,7 +88,7 @@ public class DatasourceFactory {
|
||||
var port = "5432"
|
||||
var database = ""
|
||||
var username = ""
|
||||
var password = ""
|
||||
var pwd = ""
|
||||
for (part in connStr.split(";")) {
|
||||
let seg = part.trimAscii()
|
||||
if (seg.isEmpty()) {
|
||||
@@ -103,12 +103,12 @@ public class DatasourceFactory {
|
||||
case "port" => port = value
|
||||
case "database" => database = value
|
||||
case "username" | "user id" | "uid" => username = value
|
||||
case "password" | "pwd" => password = value
|
||||
case "password" | "pwd" => pwd = value
|
||||
case _ => ()
|
||||
}
|
||||
case None => ()
|
||||
}
|
||||
}
|
||||
return "${DEFAULT_DRIVER}://${username}:${password}@${host}:${port}/${database}?sslmode=disable"
|
||||
return "${DEFAULT_DRIVER}://${username}:${pwd}@${host}:${port}/${database}?sslmode=disable"
|
||||
}
|
||||
}
|
||||
+2
-2
@@ -322,7 +322,7 @@ public open class DbContext <: CliContext {
|
||||
}
|
||||
|
||||
/// 执行 COUNT 查询(query 层回调)
|
||||
internal func count(model: EntityModel, sql: String, params: ArrayList<Any>): Int64 {
|
||||
internal func count(sql: String, params: ArrayList<Any>): Int64 {
|
||||
let conn = datasource.connect()
|
||||
try {
|
||||
let stmt = conn.prepareStatement(sql)
|
||||
@@ -529,7 +529,7 @@ public class DbSet<T> <: DbSetBase {
|
||||
public func query(): QueryBuilder<T> {
|
||||
QueryBuilder<T>(_model, _context.getDialect(),
|
||||
{ sql, params => _context.query<T>(_model, sql, params) },
|
||||
{ sql, params => _context.count(_model, sql, params) })
|
||||
{ sql, params => _context.count(sql, params) })
|
||||
}
|
||||
|
||||
/// 按主键查询(无结果返回 None)
|
||||
|
||||
Reference in new issue
Block a user