欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL 基础+高级篇- 数据库 -sql -尚硅谷130-134章DDL语言完结

程序员文章站 2022-09-14 10:56:45
#修改表时添加约束#1.添加非空约束/*1.添加列级约束alter table 表名 modify column 字段名 字段类型 新约束2.添加表级约束alter table 表名 add 【constraint 约束名】约束类型()【外键的引用】;*/USE vain;ALTER TABLE stuinfo MODIFY COLUMN stuname VARCHAR(20)NOT NULL;DESC stuinfo;ALTER TABLE stuinfo MODIFY COLUMN...
#修改表时添加约束
#1.添加非空约束
/*
1.添加列级约束
alter table 表名 modify column 字段名 字段类型 新约束
2.添加表级约束
alter table 表名 add 【constraint 约束名】约束类型()【外键的引用】;
*/
USE vain;
ALTER TABLE stuinfo MODIFY COLUMN stuname VARCHAR(20)NOT NULL;
DESC stuinfo;
ALTER TABLE stuinfo MODIFY COLUMN age INT DEFAULT 18;
ALTER TABLE stuinfo ADD PRIMARY KEY(id);
ALTER TABLE stuinfo ADD UNIQUE(seat);
ALTER TABLE stuinfo ADD FOREIGN KEY(majorid)REFERENCES major(id);
#三:修改表时删除约束
#1.删除非空约束
ALTER TABLE stuinfo MODIFY COLUMN stuname VARCHAR(20) NULL;
#2.删除默认约束
ALTER TABLE stuinfo MODIFY COLUMN age INT;

#3.删除主键
ALTER TABLE stuinfo DROP PRIMARY KEY;
ALTER TABLE stuinfo ADD PRIMARY KEY(id);

#4.删除唯一键
ALTER TABLE stuinfo DROP INDEX seat;

SHOW INDEX FROM stuinfo;
#5.添加约束
# alter table 表名 add (constraint 别名) foreign key(外键) references 某个表的(主键) 
#标识符:
/*
又称位自增长列 auto_increment
含义:可以不用手动插入值,系统提供默认的序列值
*/
#一:创建表时,设置标识符
CREATE TABLE tab_identity 
(
id INT PRIMARY KEY AUTO_INCREMENT,
 NAME VARCHAR (20));
 INSERT INTO `tab_identity`(NAME) VALUES('join');
 SELECT * FROM `tab_identity`;
 SHOW VARIABLES LIKE '%auto_increment%';
 SET auto_increment_increment=1;
 INSERT INTO `tab_identity`(NAME) VALUES('join');

/*
标识列不一定和主键搭配,但要求时一个Key
一个表至多可以有一个自增长列
标识列的类型只能是数值型
*/
#二修改表时,设置标识列
ALTER TABLE `tab_identity` MODIFY COLUMN id INT;
DESC `tab_identity`;
ALTER TABLE `tab_identity` MODIFY COLUMN id INT AUTO_INCREMENT;

本文地址:https://blog.csdn.net/yangzijiangac/article/details/107152223