• 进入 mysql -uroot-p
• 密码123456
在创建表的时候,除了使用use mydb1;
还可以使用 点 结构
比如:create table if not exists mydb1.student( );
varchar
字符类型的一定要写清楚字符值的取值大小,不然就会报错
插入日期和文字要加单引号;
语句前面要用 use myde1;//这是选择数据库的意思
在插入删除操作的时候要注意选择数据库,不然系统就会报错;
添加一列的数据
添加好多数据
注意:每一列数据后用逗号,给最后一句用分号
1可以唯一的标识行
2主键不能为空
• 联合主键:就是某几个列都是主键
这个要求:为主键的这些列不完全相同
可以有相同的,不能所有数据都相同
并且,所有主键都不能为空
alter table 表名字 add primary key (列名字);
语法:直接在创建表的时候在设计主键的后面加上 auto_increment
,
比如下面的语句:id int primary key auto_increment
,
然后在插入数据的时候,可以给自增长约束列赋值为NULL;或者直接给其他的列赋值;
自增长一般为单列
它的上限是 这个列的数据类型能够表示的最大值
一个表里面只能有一个 auto_increment 约束
方法一,在刚开始 创建表的时候就设定
语法 就是在创建表的大括号后面+ auto_increment=100
; 等等数值
方法二:
在创建表之后使用alter语句设定自增长的初始值;
alter table 表名字 auto_increment = 数字;
• delete truncate
在删除之后自增列的变化
就是要求某些列的数据不能为空值
有两种方法:
方法一:就是和设置主键约束一样,在语句的后面加上not null
比如:name varchar(20)not null,
方法二:alter table 表名字 modify 列名字 列的类型 not null
,
• 删除非空约束,就是方法二,后面的not null删除了就行
语法和非空约束以及主键约束一样
就是在创建列的后面加上unique
或者用alter语句
在唯一约束中,唯一约束的这一列的数值每一个都是唯一的,不能和这一列的其他的数据的数值相同
但是可以可唯一约束列的好多数据都赋值为 null。因为在唯一约束里面,每一个null所表示的数值是不同的。
方法二:
在创建表之后添加唯一约束
这种方法好麻烦啊
还需要自己搞一个约束名,起着个约束名的主要目的是为了后面删除约束方便
那我还是感觉在创建表的时候直接给加上唯一约束比较方便
你看,方法二里面的约束名这里就用上lia
如果是在创建表的时候直接加了约束条件,那么他的约束名就是表名字
比如;
phone_number varchar(20) unique; --创建唯一约束列
alter table t_user9 drop index phone_number;--删除唯一约束列
就是当你给这一列不赋值的时候,系统会自动赋值
有两种方法,一种为创建表的时候赋值,一种是在创建表完成之后赋值
• 在创建表的时候添加约束条件默认值
语法就是在 这个创建语句后面加上 default
默认值
在插入数据的时候,如果你给这个数据的这一列单独赋值了,那么这个列的数据 就不是默认值,而是你给他的新值
给他赋值为 NULL也行
• 在创建表之后更改列为默认值
语法 :alter table 表名字 modify 列名 列的类型(int varchar等) default 默认值;
语法: 很简单,就是在创建默认约束那个语句的后面把给他赋予的默认值改为null
alter table 表名字 modifiy 列名字 列的类型 default null;
主要针对数值类型(为了使数据定长)
这个约束会把数值改为无符号型的数据
语法就是:+zerofill
就是比如说,这个类型表示8位,你给他赋得值是4位1234,赋值之后他就会变成00001234
在实际的存储中,前面的0是不存储的,底层只存储真正的数值
删除语法:alter table 表名字 modifiy 列名字 列的类型;
1、主键约束:primary key
2、自增长约束:auto_increment
3、非空约束:not null
4、唯一约束:unique
值不能重复,可以为Null,Null和他自己不等
5、默认约束:default
添加约束的列,如果没有指定值,就是默认值,使用就是default后面加默认值
6、零填充约束:zerofill
不常用
给数值类型设置该约束,左边不够指定整形长度是,自动补0
默认零填充约束的数字int(10)
指定零填充约束的列为无符号型