mssql test with different collations
This commit is contained in:
parent
8410845c50
commit
dd542a4578
|
@ -45,6 +45,14 @@ jobs:
|
|||
TEST_MSSQL_USERNAME: sa
|
||||
TEST_MSSQL_PASSWORD: "yourStrong(!)Password"
|
||||
run: TEST_MSSQL_DEFAULT_VARCHAR=NVARCHAR TEST_MSSQL_DEFAULT_CHAR=NCHAR make test-mssql
|
||||
- name: test mssql with collation
|
||||
env:
|
||||
TEST_MSSQL_HOST: mssql
|
||||
TEST_MSSQL_DBNAME: xorm_test
|
||||
TEST_MSSQL_USERNAME: sa
|
||||
TEST_MSSQL_PASSWORD: "yourStrong(!)Password"
|
||||
TEST_MSSQL_COLLATION: SQL_Latin1_General_CP1_CS_AS
|
||||
run: TEST_MSSQL_DEFAULT_VARCHAR=NVARCHAR TEST_MSSQL_DEFAULT_CHAR=NCHAR make test-mssql
|
||||
|
||||
services:
|
||||
mssql:
|
||||
|
|
2
Makefile
2
Makefile
|
@ -25,7 +25,7 @@ TEST_MSSQL_PASSWORD ?= MwantsaSecurePassword1
|
|||
TEST_MSSQL_DEFAULT_VARCHAR ?= varchar
|
||||
TEST_MSSQL_DEFAULT_CHAR ?= char
|
||||
TEST_MSSQL_DO_NVARCHAR_OVERRIDE_TEST ?= true
|
||||
TEST_MSSQL_COLLATION ?= SQL_Latin1_General_CP1_CS_AS
|
||||
TEST_MSSQL_COLLATION ?=
|
||||
|
||||
TEST_MYSQL_HOST ?= mysql:3306
|
||||
TEST_MYSQL_CHARSET ?= utf8
|
||||
|
|
|
@ -586,7 +586,7 @@ func (db *mssql) GetIndexes(ctx context.Context, queryer core.Queryer, tableName
|
|||
IXS.NAME AS [INDEX_NAME],
|
||||
C.NAME AS [COLUMN_NAME],
|
||||
IXS.is_unique AS [IS_UNIQUE]
|
||||
FROM SYS.INDEXES IXS
|
||||
FROM sys.indexes IXS
|
||||
INNER JOIN SYS.INDEX_COLUMNS IXCS
|
||||
ON IXS.OBJECT_ID=IXCS.OBJECT_ID AND IXS.INDEX_ID = IXCS.INDEX_ID
|
||||
INNER JOIN SYS.COLUMNS C ON IXS.OBJECT_ID=C.OBJECT_ID
|
||||
|
|
2
go.mod
2
go.mod
|
@ -13,7 +13,6 @@ require (
|
|||
github.com/mattn/go-sqlite3 v1.14.16
|
||||
github.com/shopspring/decimal v1.3.1
|
||||
github.com/stretchr/testify v1.8.1
|
||||
github.com/syndtr/goleveldb v1.0.0
|
||||
modernc.org/sqlite v1.20.4
|
||||
xorm.io/builder v0.3.11-0.20220531020008-1bd24a7dc978
|
||||
xorm.io/xorm v1.3.4
|
||||
|
@ -39,6 +38,7 @@ require (
|
|||
github.com/modern-go/reflect2 v1.0.2 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0 // indirect
|
||||
github.com/syndtr/goleveldb v1.0.0 // indirect
|
||||
golang.org/x/crypto v0.6.0 // indirect
|
||||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect
|
||||
golang.org/x/sys v0.5.0 // indirect
|
||||
|
|
|
@ -55,7 +55,12 @@ func createEngine(dbType, connStr string) error {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err = db.Exec(fmt.Sprintf("If(db_id(N'xorm_test') IS NULL) BEGIN CREATE DATABASE xorm_test COLLATE %s; END;", *collation)); err != nil {
|
||||
createDBSQL := "If(db_id(N'xorm_test') IS NULL) BEGIN CREATE DATABASE xorm_test"
|
||||
if collation != nil && *collation != "" {
|
||||
createDBSQL += fmt.Sprintf(" COLLATE %s", *collation)
|
||||
}
|
||||
createDBSQL += "; END;"
|
||||
if _, err = db.Exec(createDBSQL); err != nil {
|
||||
return fmt.Errorf("db.Exec: %v", err)
|
||||
}
|
||||
db.Close()
|
||||
|
|
Loading…
Reference in New Issue