mysql基础
表的基本结构: 表由行和列组成;列由同类信息组成,每列又称为一个字段;行包括了若干列信息项,一行数据又称为一条记录(也被称为一个实体)
int: 整数,以4个字节来存储正负数,范围是:-2的31次方至2的31次方-1
bit: 取值可以为1,0,null的整数,就是表示true和false,占用1字节
float: 小数,用8个字节存储数据,最多可为53位
decimal(共有位数,小数位数): 带固定精度和小数位数,表示的数字可以达到38位
datatime: 用于表示某天的日期和时间,范围从1753/1/1至9999/12/31,时间可以表示到3.33/1000秒,使用8个字节
char(字符长度): 固定长度,长度取值范围为1-8000
varchar(字符长度): 可变长度, 长度取值范围为1-8000,max指示最大存储大小是2的31次方-1个字节
三 数据的完整性
数据完整性是指数据的精确性和可靠性,包括数据的正确性和相容性
分类:
域完整性 实体完整性 引用完整性 用户定义完整性
1 域完整性: 是对字段取值进行约束,提供了一个给定域的有效入口,包括数据类型,取值范围,格式,精度等的规定
约束方法: 限制数据类型,检查约束,外键约束,默认值,非空约束
2 实体完整性: 行完整性,是指任何一行数据都有区别于其他行的特征,也就是说,不能同时存在相同的两行数据(或者两个实体)
约束方法: 唯一约束,主键约束,标识列
3 引用完整性: 参照完整性,是指主关系表(被参照表)中的数据与从关系表(参照表)中数据的一致性
约束方法: 外键约束
四 设置约束
1 主键约束: 作用是使该字段的值不能出现重复
2 唯一约束: 用来限制字段值不能重复
3 check约束: 可以设置只有符合特定条件和格式的数据才能存入字段中,使用一个true或false的布尔表达式来检查要存入字段的值是否符合指定的条件
4 默认值约束: 用于定义字段的默认值
5 外键约束: 是表之间使用的一种关联
五 SQL语句管理表
1 创建数据表:
create table 表名
(
字段1 数据类型 字段特征,
字段2 数据类型 字段特征,
......
字段n 数据类型 字段特征
)
2 主键约束: alter table 表名 add constrint 约束名称 primary key (字段)
约束名称: PK_表名_字段名
3 唯一约束: alter table 表名 add constrint 约束名称 unique (字段)
约束名称: uq_表名_字段名
4 check约束: alter table 表名 add constrint 约束名称 check (逻辑表达式)
约束名称: ck_表名_字段名
5 默认值约束: alter table 表名 add constrint 约束名称 default 默认值 for 字段
约束名称: df_表名_字段名
6 外键约束: alter table 表名 add constrint 约束名称 foreign key (从表字段) references 主表名(主表字段)
约束名称: fk_从表名_主表名_外键字段名
7 删除约束: alter table 表名 drop [constrint] 约束名称
二 添加数据
语法: INSERT [INTO] <表名> [列名] VALUES <值列表>
UNION一次增加多行数据
语法:
INSERT [INTO] <表名> [列名]
SELECT <值列表> UNION
……
SELECT <值列表>
三 修改数据
语法: UPDATE <表名> SET <列名 = 更新值> [WHERE <更新条件>]
四 删除数据
delete语法: DELETE FROM <表名> [WHERE <删除条件>]
truncate语法: TRUNCATE TABLE <表名>
使用TRUNCATE与DELETE语句的区别:
TRUNCATE TABLE的效率比DELETE语句的效率高。
TRUNCATE TABLE语句不能删除有外键约束的表,而DELETE语句可以删除。

浙公网安备 33010602011771号