第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

關(guān)于Mysql 外鍵使用的問題

標(biāo)簽:
MySQL


在Mysql中使用foreign key 并不像oracle,access那么简单,现把使用过程应注意的问题做以讲解:

目标:建立下面的外键关系

 

 

 

 

第一步:建表

首先打开命令行窗口,进入Mysql bin目录,选择相应数据库后,建立T_USER表:

 

create table t_user (id int(11) NOT NULL auto_increment PRIMARY KEY, name VARCHAR(20),group_id int(10)) type=InnoDB;

 

建立T_PASSPORT表:

 

create table t_passport (id int(11) NOT NULL auto_increment PRIMARY KEY, serial VARCHAR(20)) type=InnoDB;

 

注意红体字部分:type=InnoDB,关于InnoDB的说明如下:

 

InnoDB 是 MySQL 上第一个提供外键约束的引擎,除了提供事务处理外,InnoDB 还支持行锁,提供和 Oracle 一样的一致性的不加锁读取,能增加并发读的用户数量并提高性能,不会增加锁的数量。也就是说如果要采用外键约束,表类型必须时InnoDB,mysql默认是MyISAM,这种类型不支持外键约束。

    

第二步:建立外键关系:

 

alter table t_user add foreign key(id) references t_passport (id) on delete cascade on update cascade;

 

此外也可以在建表时直接指定外键:(以下代码未验证)

 

create table temp( id int, name char(20), foreign key(id) references outTable(id) on delete cascade on update cascade);

 

注意:如果表结构是myISAM,上面的代码虽然能能执行,但不起任何作用。References有的文章(特别是网友的笔记中)写成:Refrences初学者应注意。

 

第三步,测试

测试1:插入外键约束

 

mysql> insert into t_user values(1,'zhaoyuan');

ERROR 1216: Cannot add or update a child row: a foreign key constraint fails

外键约束,因为t_passport 中尚未有id为1的字段。

 

测试2、删除外键约束

 

mysql> delete from t_passport;

Query OK, 1 row affected (0.06 sec)

 

mysql> select * from t_user;

Empty set (0.00 sec)

 

 

说明:把T_user id列设为外键,参照外表t_passport 的id列, 当t_passport 的id列改变时,T_user会做相应的改变。

注意: 建立外键的列应该建立索引,且不能为空,引用以被引用的两列应该是同一类型。

 

©著作权归作者所有:来自51CTO博客作者jyz608的原创作品,如需转载,请与作者联系,否则将追究法律责任

mysql数据库keyHibernate

0


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消