これが私の3番目の質問です。これまでのところ優れた回答です^^
データの閲覧、編集に問題はありませんが、挿入には問題があります...
ここに私の疑問があります:金融/株式ソフトウェアでは、新しい注文を作成するフォームがあります。
当然、t_ordersテーブルに新しい行を挿入し、orderIdフィールドがt_ordersの行にリンクされたアイテム
をt_orderitemsテーブルに挿入する必要があります
CREATE TABLE `t_orders` (
`orderId` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`clientId` INT(10) UNSIGNED NOT NULL,
...)
CREATE TABLE `t_orderitems` (
`orderitemId` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`orderId` INT(10) UNSIGNED NOT NULL,
...)
--> INDEXES AND FOREIGN KEYS OMITTED <--
itemordersをグリッドに追加し、最後に[FinalizeOrder]ボタンをクリックするにはどうすればよいですか?
- t_ordersで注文を作成します
- その注文にリンクされているt_orderitemsにアイテムを挿入します
接続はADOを使用して行われます。
このようにすることが可能かどうかはわかりませんが、その場合はどうすればよいですか?
編集:ネストされたClientDataSetsを使用しようとしましたが、部分的に機能しますが、挿入された注文IDを取得する方法がわかりません
edit2:
別の問題が発生しました。ClientDataSetに複数のアイテムを追加できません。
OrderItemIdはすべてのアイテムで空であるため(データベースの挿入時にのみその値を取得できます)、2番目のアイテムを追加しようとすると、キー違反が発生します。何かアイデアはありますか?
UpdatemodeをupWhereKeyOnlyとは異なるものに設定し、pfInKeyをFalseに設定すると、機能しますが、オプションではないと思います
何か案は?
前もって感謝します!
アーサー。