1.表的定义:
表(table):是数据库最基本的组成单元,数据库是用来存储数据的,数据库中有很多表,每一个表都是一个独立的单元,表也是一个结构化的文件,由行和列组成,行称为数据或记录,列称为字段,字段又包括:字段名称、字段类型、字段长度、字段约束
2.创建表
mysql常用数据类型:
A.创建表语法格式:create table 表名称(字段名 类型(长度) 约束);
B.查看创建表的sql语句,show create table table_name;
C.删除表,drop table table_name;(该表不存在时会报错)
drop table if exists table_name;(该表不存在时不会报错)
D.复制表,create table 表名 as 查询语句;
3.数据操纵语言
DML语句:insert、update、delete
A.insert语法:insert into 表名(字段名、字段名、字段名) values (字段值、字段值、字段值)
B.update语法:update 表名 set 字段名称 = 字段值,字段名称 = 字段值 where 限制条件;
C.delete语法:delete from table_name;//删除表中所有的数据
delete from table_name where 限制条件;--根据条件来删除
4.修改表结构
A.给表结构中增加一个新的字段,alter table table_name add 新字段名 字段类型(约束条件);
B.修改表结构中已经存在的字段,alter table table_name modify 字段名 字段类型(约束条件);
C.删除表结构中的某个字段,alter table table_name drop 字段名;
D.修改表结构中某个字段的名称,alter table table_name change 原字段名 新字段名 字段类型(约束条件);
5.约束条件
英文单词:constraint(约束)
1.什么是约束?
答:实际上是对表中数据的限制条件。
2.设计表时加入约束的目的?
答:保证表数据的完整和有效。
A.非空约束(not null)
作用:not null 约束的字段不能为null值,必须赋具体数据;
B.唯一性约束(unique)
作用:unique约束的字段具有唯一性,不可重复。
方法一:列级约束
方法二:表级约束
--该方法与列级约束效果相同
--两个字段联合起来唯一(多个字段的联合唯一性约束)
--给表的唯一约束条件起别名
查询某个表的约束条件:
C.主键约束PK(primary key)
主键作用?
答:(1)添加主键primary key的字段既不能重复也不能为空,效果与“not null unique”相同,但本质是不同的,添加主键约束之后,主键不仅会有“not null unique”作用,而且主键字段还会自动添加“索引--index”。
(2)一张表应该有主键,若没有,表示这张表是无效的【联想:数据库设计第一范式】,“主键值”是当前行数据的唯一标识,“主键值”是当前行数据的身份证号;(即使表中两行数据完全相同,但是由于主键不同,我们也认为这是两行完全不同的数据)。
方法一:列级约束
方法二:表级约束
--单一主键
--复合主键
--给表的联合主键起别名
Mysql自动生成主键值(mysql特有)
定义:MySQL数据库管理系统中提供了一个自增数字auto_increment,专门用来自动生成主键,主键值不需要用户生成,MySQL会自动生成。自增数字默认从1开始,以1递增:1,2,3...
注:使用auto_increment时,已经生成的主键删除后不会再次出现。