私はこの状況を抱えています。別のテーブルへの外部キー制約を持つテーブルに新しい行を挿入したいと考えています。新しい行を挿入すると、親テーブルから取得される外部キー列を除いて、ユーザー入力から取得された新しい値があります。外部キーは、親テーブルの auto_increment 主キーです。これは説明のために最小化されたスキーマで、関連する列のみが表示されています。
CREATE TABLE CUSTOMER (
CUSTOMER_CODE INTEGER NOT NULL AUTO_INCREMENT,
FIRST_NAME VARCHAR (20) NOT NULL,
EMAIL VARCHAR (50) UNIQUE NOT NULL,
.
.
.
PRIMARY KEY (CUSTOMER_CODE)
);
CREATE TABLE BOOKING (
BOOKING_CODE INTEGER NOT NULL AUTO_INCREMENT,
CUSTOMER_CODE INTEGER NOT NULL,
BOOKING_DATE DATE NOT NULL,
.
.
.
PRIMARY KEY (RESERVATION_CODE),
CONSTRAINT BOOKING_CUSTOMER_FK FOREIGN KEY (CUSTOMER_CODE) REFERENCES CUSTOMER
(CUSTOMER_CODE)
);
booking_date
残りの列 ( など)のシステムとのユーザーの対話に基づいて生成された値を含む新しい行を BOOKING テーブルにフィードする挿入ステートメントを知りたいのですが、取得した電子メールを含む句でcustomer_code
顧客テーブルから取得しますwhere email=
ユーザー入力から。