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 » Ruby 用 SQL Anywhere

 

SQL Anywhere での Rails サポート

Rails は、Ruby 言語で記述された Web 開発フレームワークです。その強みは、Web アプリケーションの開発にあります。Rails で開発を行う前に Ruby プログラミング言語に慣れておくことを強くおすすめします。Ruby の学習の一貫として、SQL Anywhere Ruby APIを参照することもおすすめします。

Rails による開発を始める準備ができたら、次に必要な手順がいくつかあります。

前提条件
  • RubyGems   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 とその依存ファイルをすべて 1 つのコマンド・ラインでインストールできます。
    gem install rails

  • activerecord-sqlanywhere-adapter   SQL Anywhere の ActiveRecord サポートをまだインストールしていない場合は、インストールする必要があります。これは SQL Anywhere を使用した Rails による開発を行うために必要です。RubyGems を使用すると、SQL Anywhere の ActiveRecord サポートとその依存ファイルをすべて 1 つのコマンド・ラインでインストールできます。
    gem install activerecord-sqlanywhere-adapter

始める前に

必要なコンポーネントをインストールしたら、SQL Anywhere を使用して Rails による開発を始める前に、最後に必要な手順がいくつかあります。これらの手順は、Rails でサポートされているデータベース管理システムのセットに SQL Anywhere を追加するために必要です。

  1. Rails の configs\databases ディレクトリに sqlanywhere.yml ファイルを作成する必要があります。パス \Ruby に Ruby をインストールし、Rails のバージョン 2.2.2 をインストールした場合、このファイルへのパスは \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] Getting Started With Rails」を最初に実行することをおすすめします。このチュートリアルには、blog プロジェクトを初期化するコマンドが記載されています。SQL Anywhere で使用するように blog プロジェクトを初期化するコマンドは次のようになります。

rails blog -d sqlanywhere

DEFAULT_DATABASE 設定を変更した場合は、-d sqlanywhere オプションは不要です。

blog のチュートリアルでは、3 つのデータベースを設定する必要があります。プロジェクトを初期化したら、プロジェクトのルート・ディレクトリに移動し、次のように 3 つのデータベースを作成できます。

dbinit blog_development
dbinit blog_test
dbinit blog_production

先に進む前に、次のようにデータベース・サーバと 3 つのデータベースを起動します。

dbsrv11 blog_development.db blog_production.db blog_test.db

これで、このチュートリアルを使用して、Ruby on Rails による Web 開発が可能になります。

Web 開発フレームワーク Ruby on Rails の詳細については、[external link] Ruby on Rails (http://www.rubyonrails.org/) の Web サイトを参照してください。