diff --git a/.gitea/workflows/test-mssql-collation.yml b/.gitea/workflows/test-mssql-collation.yml new file mode 100644 index 00000000..552f43a1 --- /dev/null +++ b/.gitea/workflows/test-mssql-collation.yml @@ -0,0 +1,58 @@ +name: test mssql +on: + push: + branches: + - master + pull_request: + +env: + GOPROXY: https://goproxy.io,direct + GOPATH: /go_path + GOCACHE: /go_cache + RUNNER_TOOL_CACHE: /toolcache # specify with your cache path + +jobs: + test-mssql-collation: + name: test mssql with collation + runs-on: ubuntu-latest + steps: + # - name: cache go path + # id: cache-go-path + # uses: https://github.com/actions/cache@v3 + # with: + # path: /go_path + # key: go_path-${{ github.repository }}-${{ github.ref_name }} + # restore-keys: | + # go_path-${{ github.repository }}- + # go_path- + # - name: cache go cache + # id: cache-go-cache + # uses: https://github.com/actions/cache@v3 + # with: + # path: /go_cache + # key: go_cache-${{ github.repository }}-${{ github.ref_name }} + # restore-keys: | + # go_cache-${{ github.repository }}- + # go_cache- + - uses: actions/setup-go@v3 + with: + go-version: 1.20 + - uses: actions/checkout@v3 + - name: test mssql with collation + env: + TEST_MSSQL_HOST: mssql2 + 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: + mssql2: + image: mcr.microsoft.com/mssql/server:latest + env: + ACCEPT_EULA: Y + SA_PASSWORD: yourStrong(!)Password + MSSQL_PID: Standard + ports: + - 1433:1433 \ No newline at end of file diff --git a/.gitea/workflows/test-mssql.yml b/.gitea/workflows/test-mssql.yml index ca2b27a3..676df6a1 100644 --- a/.gitea/workflows/test-mssql.yml +++ b/.gitea/workflows/test-mssql.yml @@ -44,14 +44,6 @@ 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: diff --git a/README.md b/README.md index 589f595f..5e6418df 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # xorm -[中文](https://gitea.com/xorm/xorm/src/branch/master/README_CN.md) +[中文](https://gitea.com/xorm/xorm/src/branch/v1/README_CN.md) Xorm is a simple and powerful ORM for Go. diff --git a/README_CN.md b/README_CN.md index 1afbda8e..ba18755e 100644 --- a/README_CN.md +++ b/README_CN.md @@ -1,6 +1,6 @@ # xorm -[English](https://gitea.com/xorm/xorm/src/branch/master/README.md) +[English](https://gitea.com/xorm/xorm/src/branch/v1/README.md) xorm 是一个简单而强大的Go语言ORM库. 通过它可以使数据库操作非常简便。 diff --git a/dialects/mssql.go b/dialects/mssql.go index d5af6c77..13399ed2 100644 --- a/dialects/mssql.go +++ b/dialects/mssql.go @@ -587,9 +587,9 @@ IXS.NAME AS [INDEX_NAME], C.NAME AS [COLUMN_NAME], IXS.is_unique AS [IS_UNIQUE] FROM sys.indexes IXS -INNER JOIN SYS.INDEX_COLUMNS IXCS +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 +INNER JOIN sys.columns C ON IXS.OBJECT_ID=C.OBJECT_ID AND IXCS.COLUMN_ID=C.COLUMN_ID WHERE IXS.TYPE_DESC='NONCLUSTERED' and OBJECT_NAME(IXS.OBJECT_ID) =? `