簡體   English   中英

MySQL一對多關系將值從一個表添加到另一個表

[英]MySQL one to many relationship add values from one table to another

我有兩個表,customer和CAM(客戶客戶經理)。 CAM有30個唯一條目,而客戶有300個唯一條目。表與一個CAM對許多客戶應具有一對多關系。

CAM的表格如下:

create table CAM(  
    CAM_ID integer auto_increment primary key,  
    First_Name varchar(20) not null,  
    Last_Name varchar(20) not null,  
    Current_Staff boolean  
);

客戶表如下

create table customer(
    reference integer auto_increment primary key,
    company_name varchar(25) not null,
    address varchar(30) not null,
    town varchar(30),
    post_code varchar(10) not null,
    telephone varchar(20) not null,
    contact_fname varchar(25),
    contact_sname varchar(25),
    contact_email varchar(40)
);

CAM表是一個新表,customer表已經存在。 我通過兩個不同的語句將CAM_ID列添加到客戶表中:
1個

alter table customer
add CAM_ID int

2

alter table customer
add foreign key (CAM_ID) references CAM(CAM_ID)

當嘗試將它們作為一個查詢運行時,它失敗了。

我需要一些有關如何用CAM表中的值填充客戶表中CAM_ID列的建議。 我嘗試了一些最終不起作用的方法。 例如,我試圖將CAM_ID都綁定到參考值,但是這僅填充了前30行。 另外,我嘗試對CAM_ID和參考中的值進行一些數學運算,以將它們綁定在一起。 再次,這只將30行綁定在一起,盡管與我嘗試的第一種方法不同。 我不確定外鍵的設置方式是否做錯了。

當嘗試將它們作為一個查詢運行時,它失敗了。

組合這兩個DDL的正確方法:

alter table customer
add (CAM_ID int,
 foreign key (CAM_ID) references CAM(CAM_ID)
)

db <> fiddle演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM