我正在使用带有 activerecord-sqlserver-adapter 5.1.6、tiny_tds 2.1.2 的 rails 5.1.6。和 SQL Server 2017。
数据库访问正常,
SQL (1.1ms) 使用 [MIST_Test]
用户负载 (1.5ms) EXEC sp_executesql N'SELECT [users].* FROM [users] OFFSET 0 ROWS FETCH NEXT @0 ROWS ONLY', N'@0 int', @0 = 1 [["LIMIT", nil] ]
ActiveRecord::StatementInvalid: TinyTds::Error: '0'附近的语法不正确。: EXEC sp_executesql N'SELECT [users].* FROM [users] OFFSET 0 ROWS FETCH NEXT @0 ROWS ONLY', N'@0 int', @0 = 1
来自 C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activerecord-sqlserver-adapter-5.1.6/lib/active_record/connection_adapters/sqlserver/database_statements.rb:368:in `each'
由 TinyTds::Error 引起:“0”附近的语法不正确。
来自 C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activerecord-sqlserver-adapter-5.1.6/lib/active_record/connection_adapters/sqlserver/database_statements.rb:368:in `each'
SQL Server 需要一个“ORDER BY”才能使用“OFFSET”子句。
有人可以帮忙吗?