1.一時テーブルを作成します
データ入力は、データベースプログラムの開発における必然的なリンクです。クライアント/サーバーの構造では、クライアントはそれをサーバーのバックエンドデータベースに送信する必要があります提出された後、データをクリアします。この方法の利点は、入力効率を改善し、ネットワークの負担を軽減することです。
一度にユーザーが入力したデータの量は一般に少ないため(数百のレコード以下)、一時テーブルをメモリに組み込むことができ、処理が高速になります。
方法1:クエリコントロール(TQuery)を使用します
ステップ1:クエリコントロール(TQuery)をフォームに置き、接続されたデータテーブルを設定します。
ステップ2:tqueryを作成します。
tquery = true
ステップ3:元のSQLステートメントの後にSTATEMENTを追加し、SQLクエリの結果がこれを追加した後に空になることを尋ねます。
例えば:
biolifeを選択します。
'' biolife.db″ Biolifeから
ここで、biolife.category = ′a'およびbiolife.category = ′b'
このようにして、一時テーブルが確立されます。
方法2:コードを使用して一時テーブルを作成します
コードは次のとおりです。
関数CreateTableInmemory(const afielddefs:tfielddefs):tdataset;
var
誘惑可能:TclientDataset;
始める
誘惑可能:= nil;
結果:= nil;
AfieldDefs $#@60; $#@62; nil thenの場合
始める
試す
誘惑可能:= tclientdataset.create(application);
Temptable.FieldDefs.Assign(AfieldDefs);
Temptable.createdataset;
結果:=(tdatasetとして誘惑可能);
を除外する
誘惑可能な$#@60; $#@62; nil then
誘惑可能。
結果:= nil;
上げる;
終わり
終わり
終わり;
プログラムでは、次のように使用します。
手順tform1.button1click(sender:tobject);
var
adataset:tdataset;
始める
adataset:= tdataset.create(self);
adataset.fielddefsを使用します
始める
add( 'name'、ftstring、30、false);
add( 'ue'、ftinteger、0、false);
終わり;
DataSource1を使用してください
始める
データセット:= createTableInmemory(adataset.fielddefs);
dataset.open;
終わり;
adataset.free;
終わり;
一時的なテーブルの作成が完了しました。
方法1は簡単に使用できますが、クエリコントロールを使用してデータをクリアするときにサーバーバックエンドデータベースをクエリするために使用されるため、速度はわずかに遅くなり、一時テーブルの各フィールドがいくつかのデータによってつなぎ合わされている状況には適していません。テーブルフィールド。方法2には幅広いアプリケーションと高速速度がありますが、コードを作成する必要があります。 (コード内のtfielddefsの使用方法は非常に簡単です。Delphiのオンラインヘルプを参照してください)。
2。データエンジン(BDE、SQLリンク)を構成する
データベースプログラムを配布する場合、データエンジン(BDE、SQLリンク)を携帯する必要があり、クライアントがプログラムをインストールした後、ユーザー名、パスワード(パスワード)などのデータエンジンを構成する必要もあります。手動で構成されている場合、ワークロードは比較的大きい(クライアントの数に応じて)。
[Idapiエイリアス]
outesname = sysdba
パスワード= MasterKey
プログラムをインストールした後、データエンジンは自動的に構成されます。
3.インターベースデータベースで関数を使用します
プログラマーは、関数が少なすぎる(4つだけ)、複雑なストアドプロシージャを簡単に記述できない場合、インターベースをバックグラウンドデータベースとして使用する場合、不便を感じる場合があります(4つだけ)。 Interbase自体は関数を書き込むことはできませんが、外部関数(DLLの関数と呼ばれる)を使用できます。次の例は、塩基間で副関数を宣言する方法を示しています。
外部関数副帯を宣言します
CSTRING(80)、Smallint、Smallint
CSTRINGを返す(80)
entry_point” ib_udf_substr″ module_name″ ib_udf″
WHERE:module_nameはdllの名前であり、entry_pointは関数名です。
たとえば、宣言後に使用できます。
substr(国)を選択します
国から
この例では、Delphiのインストールに伴うIblocalデータベースを使用しています。ユーザーは、インターベースを拡張するために関数自体を記述することもできます。 その他のコンテンツについては、データベースに関連する記事のトピック、または