Rails 对已有 sqlserver 数据库进行查询、列表显示,适合用 rails 来做吗?

kee · 2014年03月04日 · 最后由 cinic 回复于 2017年03月27日 · 3750 次阅读

最近接到个项目,对客户已有 BS 系统做个简单 web 展示。 数据库是 sqlserver2000,我的开发系统是 linux,在 Virtualbox 里安装了 XP+sqlserver2000,基本环境搭好了。 接触 rails 不久,不知到是否适合这个项目?有几个问题望得到帮助

  • 是否要对应 sqlserver 里的每张表建立 rails mode?
  • Activerecord 是否支持 sqlserver?
  • 有哪些相关 gem 可以介绍下

-- any help will be appreciated .)

@xds2000 sqlserver 2000 是否最高只能用 gem "activerecord-sqlserver-adapter", "~> 2.3.24" 另外 activerecord-sqlserver-adapter2.3.24 是否支持 Rails4.0.2 ?

找个 odbc 桥连接试试,或者 jruby 的那些数据库驱动

使用 tiny_tds 可以很好的支持 sql server。

@taomaree 是的 tiny_ids 我刚装完可以实现,但还需要 activerecord-sqlserver-adapter 才能适配 activerecord,可 activerecord-sqlserver-adapter 貌似 3..不支持 Rails4 和 SQLServer2000, 查到

gem 'activerecord-sqlserver-adapter', git: '[email protected]:nextgearcapital/activerecord-sqlserver-adapter.git', :branch => "rails-4"

安装完成(Rails4.0.2),现在问题是恐怕其不支持 sqlserver2000

The SQL Server adapter for ActiveRecord. If you need the adapter for SQL Server 2000, you are still in the right spot. Just install the latest 2.3.x version of the adapter. Note, we follow a rational versioning policy that tracks ActiveRecord. That means that our 2.3.x version of the adapter is only for the latest 2.3 version of Rails. We also have stable branches for each major/minor release of ActiveRecord.

难道非要用 Rails2.3 + activerecord-sqlserver-adapter2.3.x 才能符合 sqlserver2000??

@kee 看这里:https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/commit/e3108b6782167639528bea1201ca6867ee333268

对 rails4 的支持还没有发布,你可以直接用 gem repo 当 gem source,就可以了 比如 Gemfile

gem 'activerecord-sqlserver-adapter', github: 'rails-sqlserver/activerecord-sqlserver-adapter', branch: 'master'

最好还是做数据迁移吧,去用低版本的框架太蛋疼了。。。

@xds2000 是的,这些解决了,通过 fork 的分支 现在问题是 @pynix 所说的,sqlserver2000 与 activerecordsqlserver-adapter 版本匹配问题

#9 楼 @kee 先用 rails 开发出原型,然后把现有数据迁移过来。。。。

@xds2000 这个很困难啊,这个数据库支撑着多套程序,有 delphi 和 c#,担心盲目升级带来 ERP 等系统问题

taomaree 回复

tiny_tds 好像在 rails5 里安装不了,不知你有没有遇到过,切换到 rails4,就能安装

需要 登录 后方可回复, 如果你还没有账号请 注册新账号