DATABASELINK チュートリアル

表の作成
This feature is not supported on the Wolfram Cloud.

データベースに新しい表を作るには,SQLCreateTableを使う.これは,「生SQLを使った表の作成」に記載のように,SQLコマンドをそのまま使ってもできる.

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

表を作成する際,SQLCreateTableの結果はクエリの影響を受ける行数を指定する整数となる.表が正しく作られた場合は,新しい表の作成の際に影響する行はないため,この整数は必ずゼロとなる.

SQLCreateTable[conn,table,{columns},opts]SQL表を作成する

データベースの表の作成

以下に表を作成する例を示す.

DatabaseLink をロードし,demoデータベースに接続します.

In[1]:=
Click for copyable input

表の作成にはSQLCreateTableを使う.列はSQLColumn式のリストで与えられる.次の例では,新しい表DATATYPESTABLEを作成する.この表には,SQLDataTypeNamesが返したデータ型1つにつき1つの列がある.列TINYINTCOLはNullに設定できないように指定する.しかし各列のバイナリはNullに設定できる.オプションが指定されていない他の列にはデータベースののデフォルトが使われる.文字ベースの列は特定の長さに制限される.他の列は型に応じてデフォルトのデータ長が使われる.

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

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

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

SQLColumnNamesで表中の列を確認する.

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

SQLCreateTableには適用できるオプションが2つある.

オプション名
デフォルト値
"Timeout"Automaticクエリのタイムアウトを設定する
"Index"None指標を付ける列

SQLCreateTableのオプション

オプションを使うと,実行に時間がかかりすぎるクエリをキャンセルすることができる.は1つまたは複数の列に指標を加えることができる.

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

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

In[10]:=
Click for copyable input

データベースによっては,列がキーであるかどうか,または自動インクリメントであるかどうか等,列についてのより詳細なオプションをサポートしていることもある.このようなオプションが必要な場合は,SQL文を使って表を作成する.「生SQLを使った表の作成」で,その考え方と例を示す.