Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 编程 » SQL Anywhere 数据访问 API » SQL Anywhere for Ruby

 

SQL Anywhere 中的 Rails 支持

Rails 是用 Ruby 语言编写的 Web 开发框架。其优势在于 Web 应用程序开发。在尝试 Rails 开发之前,强烈建议您熟悉 Ruby 编程语言。可以考虑将 SQL Anywhere Ruby API 包括在对 Ruby 的熟悉中。

如果您准备好投入 Rails 开发,还需要完成以下几件事情。

前提条件
  • RubyGems   您应该安装 RubyGems。它使 Ruby 程序包的安装变得更加容易。编写本文档时,Rails 开发要求 1.3.1 版。[external link] Ruby on Rails (http://www.rubyonrails.org/) Web 站点将引导您安装正确版本。

  • Ruby   需要在系统上安装 Ruby 解释器。[external link] Ruby on Rails (http://www.rubyonrails.org/) Web 站点会推荐要安装的版本。

  • Rails   使用 RubyGems,只需一个命令行就可以安装所有 Rails 及其依赖包:
    gem install rails

  • activerecord-sqlanywhere-adapter   如果尚未安装 SQL Anywhere ActiveRecord 支持,则必须安装才能使用 SQL Anywhere 进行 Rails 开发。使用 RubyGems,只需一个命令行就可以安装所有 SQL Anywhere ActiveRecord 支持及其依赖包:
    gem install activerecord-sqlanywhere-adapter

开始之前

在安装必备组件之后,还必须执行最后几个步骤,然后才能使用 SQL Anywhere 开始 Rails 开发。这些步骤是将 SQL Anywhere 添加到 Rails 支持的数据库管理系统集所必需的。

  1. 必须在 Rails configs\databases 目录中创建 sqlanywhere.yml 文件。如果已将 Ruby 安装在 \Ruby 路径中,并安装了 2.2.2 版本的 Rails,则此文件的路径为 \Ruby\lib\ruby\gems\1.8\gems\rails-2.2.2\configs\databases。此文件的内容应该为:

    #
    # SQL Anywhere database configuration
    #
    # This configuration file defines the patten used for
    # database filenames. If your application is called "blog",
    # then the database names will be blog_development,
    # blog_test, blog_production. The specified username and
    # password should permit DBA access to the database.
    #
    
    development:
      adapter: sqlanywhere
      database: <%= app_name %>_development
      username: DBA
      password: sql
    
    # Warning: The database defined as "test" will be erased and
    # re-generated from your development database when you run "rake".
    # Do not set this db to the same as development or production.
    test:
      adapter: sqlanywhere
      database: <%= app_name %>_test
      username: DBA
      password: sql
    
    production:
      adapter: sqlanywhere
      database: <%= app_name %>_production
      username: DBA
      password: sql
  2. 必须更新 Rails app_generator.rb 文件。使用上述步骤 1 中的相同假设,此文件位于 \Ruby\lib\ruby\gems\1.8\gems\rails-2.2.2\lib\rails_generator\generators\applications\app 路径中。编辑 app_generator.rb 文件,并找到以下行:

    DATABASES = %w(mysql oracle postgresql sqlite2 sqlite3 frontbase ibm_db)

    sqlanywhere 添加到如下列表。

    DATABASES = %w(sqlanywhere mysql oracle postgresql sqlite2 sqlite3 frontbase ibm_db)

    如果需要,还可以更改 DEFAULT_DATABASE 设置(在下一行上),如下所示:

    DEFAULT_DATABASE = 'sqlanywhere'

    现在保存文件并退出。

了解 Rails

建议您从 Ruby on Rails Web 站点上优秀的 [external link] Rails 入门教程开始。在此教程中,将介绍用于初始化 blog 项目的命令。以下是用于初始化与 SQL Anywhere 一起使用的 blog 项目的命令。

rails blog -d sqlanywhere

如果已更改 DEFAULT_DATABASE 设置,则不需要 -d sqlanywhere 选项

另外,请注意,blog 教程需要建立三个数据库。初始化项目之后,可以切换到项目的根目录,并按如下方式创建三个数据库。

dbinit blog_development
dbinit blog_test
dbinit blog_production

必须按如下方式启动数据库服务器和三个数据库,然后才能继续。

dbsrv11 blog_development.db blog_production.db blog_test.db

现在您可以利用该教程探究 Ruby on Rails Web 开发了。

有关 Ruby on Rails Web 开发框架的详细信息,请访问 [external link] Ruby on Rails (http://www.rubyonrails.org/) Web 站点。