TSQLDataSet を使用したコマンドの実行
dbExpress の使用 への移動
単方向データセットが表す問い合わせやストアド プロシージャがたとえレコードを返さなくても、単方向データセットを使用することができます。そのようなコマンドとしては、SELECT 文以外のデータ定義言語(DDL)文またはデータ操作言語(DML)文を使用する文があります。コマンドで使用される言語はサーバー固有ですが、通常は、SQL 言語の SQL-92 標準に準拠しています。実行する SQL コマンドは、使用しているサーバーに受け入れられるものでなければなりません。単方向データセットでは SQL を評価も実行もせず、コマンドをサーバーに渡して実行させるだけです。
コマンドを実行するには:
- [ファイル|新規作成|その他...]を選択します。[新規作成]ダイアログ ボックスが表示されます。
- [新規作成]ダイアログ ボックスで、[Delphi プロジェクト]を選択し、[VCL フォーム アプリケーション]をダブルクリックします。[デザイン]タブが表示されます。
- [ツール パレット]の[dbExpress]カテゴリから、TSQLDataSet コンポーネントをフォームにドラッグします。
- 実行するコマンドを指定します。
- コマンドを実行します。
- サーバー メタデータの作成や変更を行います。
実行するコマンドを指定するには:
- [オブジェクト インスペクタ]で TSQLDataSet の CommandType プロパティと CommandText プロパティを設定して、実行するコマンドを指定します。
- [オブジェクト インスペクタ]で TSQLQuery の SQL プロパティを設定して、サーバーに渡す SQL 文を指定します。
- [オブジェクト インスペクタ]でTSQLStoredProc の StoredProcName プロパティを設定して、実行するストアド プロシージャの名前を指定します。
コマンドを実行するには:
- データセットが TSQLDataSet または TSQLQuery のインスタンスである場合は、ExecSQL メソッドを呼び出します。
- データセットが TSQLStoredProc のインスタンスである場合は、ExecProc メソッドを呼び出します。
ヒント: 同じクエリまたはストアド プロシージャを複数回実行する場合は、Prepared プロパティを True に設定するとよいでしょう。
サーバー メタデータの作成や変更を行うには:
- データベースにテーブルを作成するには、CREATE TABLE 文を使用します。
- それらのテーブルのインデックスを新しく作成するには、CREATE INDEX 文を使用します。
- さまざまなメタデータ オブジェクトを追加するには、CREATE VIEW 文、CREATE DOMAIN 文、CREATE SCHEMA 文、CREATE PROCEDURE 文を使用します。
- 上記のメタデータ オブジェクトのいずれかを削除するには、DROP TABLE 文、DROP VIEW 文、DROP DOMAIN 文、DROP SCHEMA 文、DROP PROCEDURE 文を使用します。
- テーブルの構造を変更するには、ALTER TABLE 文を使用します。