diff --git a/VERSION b/VERSION index 35d0d470..98ef8831 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -xorm v0.6.0.0929 \ No newline at end of file +xorm v0.6.0.1010 \ No newline at end of file diff --git a/a.patch b/a.patch new file mode 100644 index 00000000..6bcd457c --- /dev/null +++ b/a.patch @@ -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 diff --git a/patch b/patch new file mode 100644 index 00000000..b8c95f04 --- /dev/null +++ b/patch @@ -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 diff --git a/statement.go b/statement.go index 5a08ef71..5d59a329 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 diff --git a/xorm.go b/xorm.go index 81fe5997..04580e3f 100644 --- a/xorm.go +++ b/xorm.go @@ -17,7 +17,7 @@ import ( const ( // Version show the xorm's version - Version string = "0.6.0.0929" + Version string = "0.6.0.1010" ) func regDrvsNDialects() bool {