【发布时间】:2013-06-06 22:40:55
【问题描述】:
一个简单的 Rails 3 应用程序尝试使用 activerecord-jdbc-adapter 与 SQL Server 2000 通信。我尝试了 microsoft jdbc 驱动程序和 jtds 驱动程序。似乎连接到数据库OK。
显示数据时出现此错误:
ActiveRecord::StatementInvalid in PencilsController#show
ActiveRecord::JDBCError: 'ROW_NUMBER' 不是可识别的函数名。: SELECT t.* FROM (SELECT ROW_NUMBER() OVER(ORDER BY [pencils].id) AS _row_num, [pencils].* FROM [pencils ] WHERE [pencils].[id] = 1) AS t WHERE t._row_num BETWEEN 1 AND 1
【问题讨论】:
-
ROW_NUMBER(和其他窗口函数)是在 SQL Server 2005 中引入的,因此在 SQL Server 2000 上不可用。
-
您是否下载了 sql server jdbc jar 文件并按照以下类似步骤操作:techwhizbang.com/2010/03/jruby-activerecord-jdbc-sqlserver?
标签: ruby-on-rails sql-server activerecord jdbc jruby