MySQL入门之路
记录一下自己的笔记~
MySQL:关系型数据库管理系统(软件)
关系模型:由二维表来保存数据,利用外键来表示表和表之间的关系的一种数据库设计模型
数据库组成:由表.关系.操作对象组成
一些基础操作~
复制表:
只复制表结构:
CREATE TABLE 表名 LIKE 新表名;
复制表结构和复制数据:
CREATE TABLE 新表名 AS(SELECT * FROM表名);
对于表结构的修改操作
修改表名:
ALTER TABLE 新表名 RENAME 表名
添加列:
ALTER TABLE 表名 ADD 新列名 数据类型 约束;
删除列:
ALTER TABLE 表名 DROP 列名;
修改列:
更改列的定义(修改列名和数据类型以及约束):
ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型(约束);
⑵更改列数据类型
ALTER TABLE 表名 MODIFY 列名 新数据类型;
DML(操作语言) INSERT INTO(插入数据) values(新内容) update(修改数据) delete(删除) from(查找) where(附加条件)
插入数据
单行插入:
INSERT INTO 表名 (列名) values (新行内容);
INSERT INTO 表名 values(新行内容); //如果是对所有列都插入数据那么列名可以省略不写
多行插入:
INSERT INTO 表名(列名) values (新行内容),(新内容)
更新数据
UPDATE 表名 SET 列名 = 新数据 ; // 局部更新
UPDATE 表名 SET 列名 = 新数据 WHERE 独立列名 = 新数据; //更新独立列名的数据
删除数据
DELETE FROM 表名; //整表删除
DELETE FROM 表名 WHERE 列名=(条件); //删除特定条件
TRUNCATE TABLE 表名; //删除整表
约束:
主键 primary key:
⑴体现了实体完整性
⑵一个表只能有一个主键
⑶单列主键
⑷联合主键
⑶可以和其他约束叠加
外键foreign key(列名) references表名(列名):
⑴体现了引用完整性.列完整性
⑵一个表可以有多个外键
⑶可以和其他约束叠加
⑶外键条件:
引用的两列数据类型要一致
自增长性 auto_increment
⑴体现了实体的完整性.列完整性
⑵在mysql里需要搭配主键一起使用
唯一 unique
⑴体现了实体完整性
⑵每列都可以使用
⑶主键自带唯一约束
⑶可以和其他约束叠加
非空 not null
⑴ 体现了列完整性
⑵每一列都可以使用
⑶可以和其他约束叠加
默认 default
⑴体现了列完整性
⑵每一列都可以使用
⑶可以和其他约束叠加