MySQL社区

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 8376|回复: 1

[例子类] 建立/删除表关联(外键约束)语句及例子

[复制链接]
发表于 2007-7-30 09:27:54 | 显示全部楼层 |阅读模式
Innodb存储引擎支持FOREIGN KEY和REFERENCES子句。

例子:

1、创建约束

ALTER TABLE DomainPatient
  ADD CONSTRAINT FK_DPatient_XPatientTID FOREIGN KEY (PIXPatientTID)
      REFERENCES
PIXPatient (PIXPatientTID) ON DELETE RESTRICT ON UPDATE RESTRICT;

表参考语句
/*==============================================================*/
/* Table: DomainPatient                                         */
/*==============================================================*/
create table DomainPatient
(
   DomainPatientTID               int unsigned                   not null AUTO_INCREMENT,
   PIXPatientTID                  int unsigned,
   PatientSex                     char(1)                        not null,
   PatientBirthday                date                           not null,
   HomePhoneNumber                varchar(30),
   BizPhoneNumber                 varchar(30),
   primary key (DomainPatientTID)
)
type = InnoDB;
注:PIXPatientTID需要是索引。


/*==============================================================*/
/* Table: PIXPatient                                         */
/*==============================================================*/
create table PIXPatient
(
   PIXPatientTID                  int unsigned                   not null AUTO_INCREMENT,
   PIXPatientID                   varchar(64)                    not null,
   PIXPatientStatus               varchar(64),
   primary key (PIXPatientTID)
)
type = InnoDB;

注意问题:所关联的列数据类型一定要相同,要有对应的索引,必须先建立索引。

2、删除约束

ALTER TABLE yourtablename DROP FOREIGN KEY fk_symbol;

[ 本帖最后由 kider 于 2007-8-7 19:08 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|申请友链|小黑屋|Archiver|手机版|MySQL社区 ( 京ICP备07012489号   
联系人:周生; 联系电话:13911732319

GMT+8, 2024-7-22 13:45 , Processed in 0.073902 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表