bug fixed for mssql
This commit is contained in:
parent
c84441e264
commit
291b8fedc3
|
@ -0,0 +1,24 @@
|
|||
diff --git a/statement.go b/statement.go
|
||||
index 5a08ef7..9a9350e 100644
|
||||
--- a/statement.go
|
||||
+++ b/statement.go
|
||||
@@ -1199,7 +1199,7 @@ func (statement *Statement) genSelectSQL(columnStr, condSQL string) (a string) {
|
||||
top = fmt.Sprintf(" TOP %d ", statement.LimitN)
|
||||
}
|
||||
if statement.Start > 0 {
|
||||
- var column = "(id)"
|
||||
+ var column string
|
||||
if len(statement.RefTable.PKColumns()) == 0 {
|
||||
for _, index := range statement.RefTable.Indexes {
|
||||
if len(index.Cols) == 1 {
|
||||
@@ -1210,7 +1210,10 @@ func (statement *Statement) genSelectSQL(columnStr, condSQL string) (a string) {
|
||||
if len(column) == 0 {
|
||||
column = statement.RefTable.ColumnsSeq()[0]
|
||||
}
|
||||
+ } else {
|
||||
+ column = statement.RefTable.PKColumns()[0].Name
|
||||
}
|
||||
+
|
||||
var orderStr string
|
||||
if len(statement.OrderStr) > 0 {
|
||||
orderStr = " ORDER BY " + statement.OrderStr
|
|
@ -0,0 +1,31 @@
|
|||
diff --git a/statement.go b/statement.go
|
||||
index 5a08ef7..5d59a32 100644
|
||||
--- a/statement.go
|
||||
+++ b/statement.go
|
||||
@@ -1199,7 +1199,7 @@ func (statement *Statement) genSelectSQL(columnStr, condSQL string) (a string) {
|
||||
top = fmt.Sprintf(" TOP %d ", statement.LimitN)
|
||||
}
|
||||
if statement.Start > 0 {
|
||||
- var column = "(id)"
|
||||
+ var column string
|
||||
if len(statement.RefTable.PKColumns()) == 0 {
|
||||
for _, index := range statement.RefTable.Indexes {
|
||||
if len(index.Cols) == 1 {
|
||||
@@ -1210,7 +1210,17 @@ func (statement *Statement) genSelectSQL(columnStr, condSQL string) (a string) {
|
||||
if len(column) == 0 {
|
||||
column = statement.RefTable.ColumnsSeq()[0]
|
||||
}
|
||||
+ } else {
|
||||
+ column = statement.RefTable.PKColumns()[0].Name
|
||||
}
|
||||
+ if statement.needTableName() {
|
||||
+ if len(statement.TableAlias) > 0 {
|
||||
+ column = statement.TableAlias + "." + column
|
||||
+ } else {
|
||||
+ column = statement.TableName() + "." + column
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
var orderStr string
|
||||
if len(statement.OrderStr) > 0 {
|
||||
orderStr = " ORDER BY " + statement.OrderStr
|
12
statement.go
12
statement.go
|
@ -1199,7 +1199,7 @@ func (statement *Statement) genSelectSQL(columnStr, condSQL string) (a string) {
|
|||
top = fmt.Sprintf(" TOP %d ", statement.LimitN)
|
||||
}
|
||||
if statement.Start > 0 {
|
||||
var column = "(id)"
|
||||
var column string
|
||||
if len(statement.RefTable.PKColumns()) == 0 {
|
||||
for _, index := range statement.RefTable.Indexes {
|
||||
if len(index.Cols) == 1 {
|
||||
|
@ -1210,7 +1210,17 @@ func (statement *Statement) genSelectSQL(columnStr, condSQL string) (a string) {
|
|||
if len(column) == 0 {
|
||||
column = statement.RefTable.ColumnsSeq()[0]
|
||||
}
|
||||
} else {
|
||||
column = statement.RefTable.PKColumns()[0].Name
|
||||
}
|
||||
if statement.needTableName() {
|
||||
if len(statement.TableAlias) > 0 {
|
||||
column = statement.TableAlias + "." + column
|
||||
} else {
|
||||
column = statement.TableName() + "." + column
|
||||
}
|
||||
}
|
||||
|
||||
var orderStr string
|
||||
if len(statement.OrderStr) > 0 {
|
||||
orderStr = " ORDER BY " + statement.OrderStr
|
||||
|
|
Loading…
Reference in New Issue