Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
この項では、データベースの作成や、再構築のときに必要な選択肢について説明します。
ここでは、Transact-SQL と互換性のあるデータベースを作成するときに必要な手順を示します。この項の残りの部分では、設定する必要があるオプションについて説明します。
SQL Anywhere 12 プラグインを使用して、データベースに接続します。
[ツール] » [SQL Anywhere 12] » [データベースの作成] をクリックします。
ウィザードの指示に従います。
[Adaptive Server Enterprise のエミュレート] をクリックします。[次へ] をクリックします。
ウィザードの残りの指示に従います。
次の dbinit コマンドを実行します。
dbinit -b -c -k db-name.db
SQL Anywhere データベースに接続します。
次の文を、Interactive SQL などで入力します。
CREATE DATABASE 'db-name.db' ASE COMPATIBLE CASE RESPECT BLANK PADDING ON;
この文で、ASE COMPATIBLE は Adaptive Server Enterprise と互換性があるという意味です。SYS.SYSCOLUMNS と SYS.SYSINDEXES の各ビューが作成されません。
デフォルトでは、Adaptive Server Enterprise データベースでの文字列比較は大文字と小文字を区別しますが、SQL Anywhere では大文字と小文字を区別しません。
SQL Anywhere を使用して Adaptive Server Enterprise と互換性のあるデータベースを構築する場合は、大文字と小文字を区別するオプションを選択します。
Sybase Central を使用している場合は、このオプションはデータベース作成ウィザードにあります。
dbinit ユーティリティを使用している場合は、-c オプションを指定します。
SQL Anywhere を使用して Adaptive Server Enterprise と互換性のあるデータベースを構築するときには、比較するときに後続ブランクを無視するオプションを選択します。
dbinit ユーティリティを使用している場合は、-b オプションを指定します。
このオプションを選択すると、Adaptive Server Enterprise と SQL Anywhere では次の 2 つの文字列を等しいと見なします。
'ignore the trailing blanks ' 'ignore the trailing blanks'
このオプションを選択しないと、SQL Anywhere ではこの 2 つの文字列は異なっていると見なします。
このオプションを選択すると、クライアントアプリケーションでフェッチした文字列にブランクが埋め込まれます。
SQL Anywhere の古いバージョンでは 2 つのシステムビューを使用していましたが、互換性を確保しようとすると、それらの名前は Adaptive Server Enterprise のシステムビューと矛盾します。その 2 つのビューは SYSCOLUMNS と SYSINDEXES です。Open Client または JDBC のインターフェイスを使用している場合は、これらのビューを除外してデータベースを作成します。この処理には dbinit -k オプションを使用します。
データベースの作成時にこのオプションを使用しなかった場合、SELECT * FROM SYSCOLUMNS; 文を実行すると、「テーブル名 'SYSCOLUMNS' はあいまいです。」というエラーが発生します。
SELECT * FROM SYSCOLUMNS;
テーブル名 'SYSCOLUMNS' はあいまいです。