一、mysql中6中常见的的约束/规则
主键约束(primary key)
外键约束(foreign key): 如果同一个属性字段x在表一中数主键,而在表二中不是主主键,则字段称为表二的外键。
非空约束(not null)
唯一性约束(unique key): 唯一,可为空,但空值值允许出现一次。
默认值约束(defaulst): 当为空时,默认值
自增约束(auto_increment): 随着记录增加,基于最新的记录的id,进行自加1的增长。
1、主键和外键的关系
创建外键约束作用(误删、修改),保证数据的完整性和一致性。
主键表和外键表的理解:
以公共关键字作为主键的表为主键表(父表、主表)
以公共关键字作为外键的表为外键表(从表、外表)
create table test01 (hobid int(4),hobname varchar(50)); #创建一个主表,先不定义主键,也可以定义好 create table test02 (id int(4) primary key auto_increment,name varchar(10),age int(3),hobid int (4)); #创建从表 alter table test01 add constraint pk_hobid primary key(hobid); #添加主表test01一个主键约束,主键的名字以pk开头 alter table test02 add constraint fk_hobid foreign key(hobid) references test01(hobid); #为从表test02添加外键,并将test02表的hobid字段和test01字段建立外键关联,外键名建议以"FK_"开头 references :引用(主表的主键) show create table test02; #使用查询表语句结构查看外键关联 插入数据的时候。需要先插入主表,在插入从表,不然会报错。 删除数据的时候,需要先删除从表的记录,在删除主表的记录。
二、SQL语句
SQL语言分类:
DDL:数据定义语言,用于创建数据库对象,如库、表、索引等
DML:数据操纵语言,用于对表中的数据进行管理,用来插入、删除和修改数据库中的数据
DQL:数据查询语言,用于从数据表中查找符合条件的数据记录
DCL:数据控制语言,用于设置或者更改数据库用户或角色权限(数据控制语句,用于控制不通数据段直接的许可和访问级别的语句,这些语句定义了数据库、表、字段、用户的访问权限和安全级别,如COMMIT、ROLLBACK、GRANT、REVOKE)
普通的建立在前一篇已经介绍了
SELECT * FROM zzz;
SELECT id,name,score FROM zzz WHERE id=2;
select name from zzz\G #以列表方式竖向显示
select * from info limit 2; #只显示头2行
select * from info limit 2,3; #显示第2行后的前3行
数据表高级操作
克隆表
格式:create table 创建的表 like 复制的表; #复制表的结构 格式:insert into 新表 select * from 复制的表; #复制表的内容
这里报错是因为create的是表,不是数据库
建立数据插入表中,由于更换了虚拟机,所以前面的基础信息变化,但是步骤不变
标签:语句,基础,外键,hobid,key,mysql,table,主表,主键 From: https://www.cnblogs.com/123456789SI/p/16919342.html