国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySql之約束

2024-07-24 13:00:11
字體:
來源:轉載
供稿:網友

1、主鍵約束:

三個特點:非空、唯一、可以被引用。

1).創建表時指定主鍵的兩種方式:

方式一:
CREATE TABLE stu (		  `sid` INT PRIMARY KEY,		  `sname` VARCHAR (20),		  `age` INT,		  `gender` VARCHAR (10)		)ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='學生表'; 方式二:
CREATE TABLE stu (		  `sid` INT,		  `sname` VARCHAR (20),		  `age` INT,		  `gender` VARCHAR (10),		  PRIMARY KEY(`sid`)		)ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='學生表';

2).修改表時指定主鍵

ALTER TABLE stu ADD PRIMARY KEY(`sid`);

3).刪除主鍵

ALTER TABLE stu DROP PRIMARY KEY;

2、主鍵自增長

1).創建表時指定主鍵自增長

CREATE TABLE stu (		  `sid` INT AUTO_INCREMENT PRIMARY KEY,		  `sname` VARCHAR (20),		  `age` INT,		  `gender` VARCHAR (10)		)ENGINE=INNODB AUTO_INCREMENT=10000 DEFAULT CHARSET=utf8 COMMENT='學生表';

2).修改表時設置主鍵自增長(設置自增長時,該字段必須是個key,如果不是則需要添加)

ALTER TABLE stu CHANGE sid sid INT AUTO_INCREMENT PRIMARY KEY;

3).修改表時刪除主鍵自增長

ALTER TABLE stu CHANGE sid sid INT;

3、非空約束

某列不能設置為NULL值,所以要對該列添加非空約束。
CREATE TABLE stu(		`sid` INT AUTO_INCREMENT PRIMARY KEY,		`sname` VARCHAR(20) NOT NULL,		`age` INT,		`gender` VARCHAR (10)	)ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='學生表';

4、唯一約束

某些列不能設置重復的值,所以可以對該列添加唯一約束。
CREATE TABLE stu(		`sid` INT AUTO_INCREMENT PRIMARY KEY,		`sname` VARCHAR(20) NOT NULL UNIQUE,		`age` INT,		`gender` VARCHAR (10)	)ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='學生表';

5、外鍵約束

外鍵用于關聯另一張表,可以確定另一張表記錄的字段,用于保持數據的一致性。比如:A表中的一個字段,是B表的主鍵,那他就可以是A表的外鍵。特點:外鍵可以為空,可以重復,但是不能是主表中引用的字段沒有的值。

1).創建表時指定外鍵

A表:			CREATE TABLE dept (				`deptno` INT PRIMARY KEY AUTO_INCREMENT,				`deptname` VARCHAR (50)			) ENGINE = INNODB DEFAULT CHARSET = utf8 COMMENT = '部門表' ;		B表:			CREATE TABLE emp(				`empno` INT PRIMARY KEY AUTO_INCREMENT,				`empname` VARCHAR(50) NOT NULL UNIQUE,				`deptno` INT NOT NULL,				CONSTRAINT fk_emp_dept FOREIGN KEY(deptno) REFERENCES dept(deptno) 			)ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='員工表';

2).修改表時指定外鍵

ALTER TABLE emp 			ADD CONSTRAINT fk_emp_dept FOREIGN KEY (deptno) REFERENCES dept (deptno) ;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 轮台县| 大兴区| 石家庄市| 龙南县| 上犹县| 万州区| 棋牌| 上高县| 富川| 山东| 德格县| 达尔| 云龙县| 邛崃市| 长顺县| 凯里市| 婺源县| 永和县| 贡觉县| 潍坊市| 万全县| 修文县| 台前县| 沽源县| 博爱县| 疏附县| 东阿县| 紫云| 泰兴市| 揭东县| 措勤县| 宜良县| 水城县| 余庆县| 乐山市| 濮阳县| 延边| 吉木乃县| 岗巴县| 南乐县| 邵阳县|