mql建表 外來鍵

2021-08-31 05:37:33 字數 1212 閱讀 6732

環境:toad for mysql

建表錯誤資訊:

database error: can't create table 'sc17_trunk.tbl_pc_remote_svc' (errno: 150)

分析原因 :

[color=red]1.外來鍵和被引用外來鍵型別不一樣,比如integer和double

2.找不到要被引用的列 (這種情況)

3.表的字元編碼不一樣

注:聯合主鍵做外來鍵的時候要一起使用

例如:foreign key(c2,c3) references parent(c1,c2));

[/color]

正確的建表語句:

create table `tbl_pc_remote_svc` (

`remote_svc_id` int(11) not null auto_increment,

`data_svc_id` varchar(64) not null,

`edx_service_id` varchar(64) not null,

`created_dt` datetime default null,

`created_by` varchar(32) default null,

`updated_dt` datetime default null,

`updated_by` varchar(32) default null,

`dpl_version` int(11) default null,

primary key (`remote_svc_id`),

key `tbl_pc_remote_svc_fk1` (`data_svc_id`),

key `tbl_pc_remote_svc_fk2` (`edx_service_id`),

constraint `tbl_pc_remote_svc_fk1` foreign key (`data_svc_id`) references `tbl_pc_data_svc` (`data_svc_id`),

constraint `tbl_pc_remote_svc_fk2` foreign key (`edx_service_id`) references `tbl_pc_edx_service` (`service_id`)

) engine=innodb default charset=latin1;

oracle建表 建主鍵 外來鍵基本語法

建立 語法 create table 表名 欄位名1 字段型別 長度 是否為空,欄位名2 字段型別 是否為空 增加主鍵 alter table 表名 add constraint 主鍵名 primary key 欄位名1 增加外來鍵 alter table 表名 add constraint 外鍵名...

建表 注釋 主鍵 外來鍵 自增長鍵

create table create table tbl bos ap apid varchar2 32 not null,apimsi varchar2 32 not null,apusim varchar2 32 not null,customerid varchar2 32 not null...

mysql基本操作(建表,新增外來鍵等)

考研結束放假在家等成績是在著急,突然想起畢業設計,在使用mysql發現過於依賴第三方工具基本的命令都忘記了,做乙個簡單的整理和複習 一,建表的操作,基本格式 create table 表名 實際操作 建立表的簡單操作完成,但是在建立表的時候回新增注釋或者設定約束又或者設定儲存引擎等等,這些操作可以參...