将Rails 2.x与MS SQL Server 2005一起使用

squ*_*tte 8 sql-server odbc ruby-on-rails

这里有人有从Rails 2.x使用MS SQL Server 2005的积极经验吗?

我们的开发人员使用Mac OS X,我们的生产在Linux上运行.出于遗留原因,我们应该使用MS SQL Server 2005.

我们正在使用ruby-odbc并遇到各种各样的问题,在这里列出太令人沮丧了.我得到的印象是我们做错了什么.

我说的是不妥协的用法,即迁移和所有.

谢谢,

Ben*_*kin 8

你考虑过使用JRuby吗?Microsoft有一个可以在UNIX变种上运行的SQL Server JDBC驱动程序(它是纯Java AFAIK).我今天能够使用JRuby和Rails 2.1进行2.0技术预览.我还没有尝试迁移,但到目前为止,驱动程序似乎运行良好.

这是如何使其工作的草图:

  1. 确保已安装Java 6
  2. 使用JRuby网站上的说明安装JRuby
  3. 使用gem(jruby -S gem install rails)安装Rails
  4. 下载Microsoft的SQL Server JDBC驱动程序的UNIX包(版本2.0)
  5. 解压缩Microsoft的SQL Server驱动程序
  6. 找到sqljdbc4.jar并将其复制到JRuby的lib目录
  7. jruby -S gem install activerecord-jdbcmssql-adapter
  8. 创建rails项目(jruby -S rails hello)
  9. 将正确的设置放在database.yml中(以下示例)
  10. 你们都准备好了!尝试运行jruby script/console并创建模型.
    development:
      host: localhost
      adapter: jdbc
      username: sa
      password: kitteh
      driver: com.microsoft.sqlserver.jdbc.SQLServerDriver
      url: jdbc:sqlserver://localhost;databaseName=mydb
      timeout: 5000

注意:我不确定您是否可以将Windows身份验证与JDBC驱动程序一起使用.您可能需要使用SQL Server身份验证.

祝你好运!


Aup*_*ajo 1

我强烈建议您考虑从旧数据库迁移。您可能很快就会发现自己陷入痛苦的世界。根据经验,Rails 和遗留模式也不能很好地结合在一起。

恐怕我不认为这个问题有一个“好的解决方案”。