DATABASELINK チュートリアル

生SQLを使った表の作成

生SQLコマンドCREATE TABLEはデータベースに表を作成するときに使う.これは「表の作成」に記載のように,Mathematica コマンド SQLCreateTableでもできる.

このチュートリアルの例を実際に試してみて,記載の通りに動作しなかった場合は,「データベースの例の使用」で述べているようにパッケージを使ってデータベースをもとの状態に戻す必要があるかもしれない.

表を作るとき,SQLExecuteの結果はクエリの影響を受ける行数を示す整数になる.表が正しく作成されたら,新しい表の作成時に影響を受ける行はないので,この整数は必ずゼロとなる.

以下に表の作成の例を示する.DatabaseLink をロードし,demoデータベースに接続する.

In[1]:=
Click for copyable input

表を作成する際,データベース内にどのようにデータが保管されるかを制限するオプションを指定することができる.次の例では,4列の表が作成される.USERNAMEは文字列ベースの列で,Nullを取ることはできず,主キーとる(主キーは表の中の行を一意的に表すので,表においては重要である).他の3つの列(ADDRESS,CITY,ZIPCODE)は一般的な文字ベースの列であるが,すべての行において唯一でなければならない.

In[3]:=
Click for copyable input
Out[3]=

2つ目の例では,3列の表が作られる.1つ目の列は,列を識別するための整数である.これはこの列が表の主キーであり,値が自動的に各行で1ずつ増やされることを意味している.つまり,データの挿入時点で値は必要とされず,代りにその値が次の増分となるということである.USERNAMEは文字列ベースの列で,表ADDRESSESでは外部キーである.3列目はビットで,デフォルトでは1である(データ挿入時に値が与えられなかったら,1に設定される).

In[4]:=
Click for copyable input
Out[4]=

SQLTableNamesを使って,表がデータベースに存在することを確認する.

In[5]:=
Click for copyable input
Out[5]=
In[6]:=
Click for copyable input
Out[6]=

SQLColumnNamesでデータベース内に列が作られたことを確認する.

In[7]:=
Click for copyable input
Out[7]=
In[8]:=
Click for copyable input
Out[8]=

表を削除し,接続を閉じる.

In[9]:=
Click for copyable input

使用するデータベースによっては,表の作成時に他のオプションが使えることがある.これらはどのようなことが行えるかを示す例である.どのオプションが使用できるかについての詳細は,お使いのデータベースのドキュメントを参照されたい.

New to Mathematica? Find your learning path »
Have a question? Ask support »