From fdb3b3c4254afe840eb348c091a0d1c724a4e661 Mon Sep 17 00:00:00 2001 From: wulove Date: Tue, 1 Jul 2014 10:05:22 +0800 Subject: [PATCH 1/2] Update xorm.go MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 增加对https://github.com/denisenkom/go-mssqldb的适配,go-mssqldb对mssql数据库兼容支持较odbc好 --- xorm.go | 1 + 1 file changed, 1 insertion(+) diff --git a/xorm.go b/xorm.go index 86a4ee55..b82d967f 100644 --- a/xorm.go +++ b/xorm.go @@ -29,6 +29,7 @@ func regDrvsNDialects() bool { getDriver func() core.Driver getDialect func() core.Dialect }{ + "mssql": {"mssql", func() core.Driver { return &odbcDriver{} }, func() core.Dialect { return &mssql{} }}, "odbc": {"mssql", func() core.Driver { return &odbcDriver{} }, func() core.Dialect { return &mssql{} }}, // !nashtsai! TODO change this when supporting MS Access "mysql": {"mysql", func() core.Driver { return &mysqlDriver{} }, func() core.Dialect { return &mysql{} }}, "mymysql": {"mysql", func() core.Driver { return &mymysqlDriver{} }, func() core.Dialect { return &mysql{} }}, From 6dd8bcfca00cc62defa17157229a5441ddaec5f8 Mon Sep 17 00:00:00 2001 From: wulove Date: Tue, 1 Jul 2014 10:09:16 +0800 Subject: [PATCH 2/2] Update engine.go MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 当数据库driver是https://github.com/denisenkom/go-mssqldb时,不对datetime类型进行时间截取,在go-mssqldb中会自动处理 --- engine.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/engine.go b/engine.go index 2bd8d523..b17b006d 100644 --- a/engine.go +++ b/engine.go @@ -1383,6 +1383,8 @@ func (engine *Engine) FormatTime(sqlTypeName string, t time.Time) (v interface{} case core.TimeStampz: if engine.dialect.DBType() == core.MSSQL { v = engine.TZTime(t).Format("2006-01-02T15:04:05.9999999Z07:00") + } else if engine.DriverName() == "mssql" { + v = engine.TZTime(t) } else { v = engine.TZTime(t).Format(time.RFC3339Nano) }