我遇到了這種情況。我想插入一個新的行到表中有一個外鍵約束到另一個表。當我插入一個新的行時,我有從用戶輸入中獲取的新值,除了要從父表中獲取的外鍵列。而外鍵是父表中的auto_increment主鍵。這裏是一個最小化的模式來說明,只顯示相關的列。Mysql:在子表中插入一個新行,除了從父表獲得的外鍵列以外的新值
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
)insert語句,將基於該系統的列的其餘部分的用戶交互與生成的值送入預訂表中的新行,但獲得來自該customer_code
客戶表與where email=
子句與從用戶輸入獲得的電子郵件。
在更廣泛的上下文中,您的應用程序會有一些登錄設施,您可能會要求他提供登錄憑據。只需將這些憑據保存在會話中即可。之後,你可以查詢數據庫的用戶身份的xyz獨特的電子郵件。現在你擁有所有的價值。繼續吧。插入記錄。 – ankurtr
@ ankur.trapasiya這就是我要求的...插入語句 – Obby
的語法插入到預定值(....,12,....)。這裏是來自會話的客戶ID。 – ankurtr