2

私はpowerbuilderを初めて使用し、データウィンドウの使用に多くの問題を抱えています。インサート機構に頭が回らない。誰かが私にそれを説明することができますか、または少なくとも私を正しい方向に向けることができますか(記事、ヒントなど...)?

4

2 に答える 2

9

データウィンドウによって生成される SQL は、更新プロパティ (メニュー項目 [行] / [プロパティの更新...]) によって制御されます。そこから、1 つのテーブルを選択し、SQL の生成に使用するプロパティを設定できます。Where 句... は、UPDATE および DELETE の WHERE 句で使用される列とその元の値を決定します。キーの変更は、キーとして定義した列を変更する (またはユーザーに変更を許可する) 場合にのみ有効になります。更新可能な列は、SQL を生成するもののリストです (これは、UI が何らかの方法で許可するものには影響しません)。キー列主キー (DBMS がデータベースからのクエリの呼び出しをサポートしている場合は、[主キー] ボタンで自動入力できます) ですが、そうである必要はありません。ID カラムをキーとして持っている場合、それをデータウィンドウに識別させることができ、INSERT の後に生成された値を取得します。

その後、InsertRow()、DeleteRow()、SetItem() を使用してデータウィンドウにデータを入力し、もちろんユーザーに UI を表示させると、Update() 時に生成される SQL を決定するデータとステータス フラグが変更されます。と呼ばれます。

これらはすべて、Modify() 関数を使用して実行時に変更できるため、1 つのデータウィンドウで複数のテーブルを更新するなどの操作を実行できます。これは、PowerBuilder Foundation Class の複数テーブル更新サービスに実装されているため、実行時にこれらの値を変更する必要がある場合は、サンプル コードが役立ちます。

幸運を、

テリー。

于 2010-06-14T14:26:32.057 に答える
2

@Archangel 検索引数として値を指定した後でも、データウィンドウに行を挿入するときに test_id フィールドを提供する必要があります。insertrow を実行した後、null 値を許可しないすべての値に対して setitem を実行してください。

于 2010-06-15T11:37:37.890 に答える