mysql的学习笔记:
理论规范(三个范式)
1.每一列都是不可分割的数据。
2.每个表都要有自己的key.
3.属性不传递依赖于主键。
(DDL)
创建数据库ooo:
CREATE DATABASE if not EXISTS ooo
DEFAULT CHARSET UTF8 COLLATE utf8_general_ci;
删除ooo:
DROP DATABASE ooo
建立一个people表
CREATE TABLE people(
id int PRIMARY KEY,
NAME VARCHAR(6) not null,
sex enum('男','女') not null DEFAULT '男');
修改people表:
(1)把sex换成gender,后面的是字段类型(不是所有都这么写)
(2)添加age属性
ALTER TABLE people CHANGE `sex` `gender` enum('男','女') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '男' AFTER `NAME`;
ALTER table people add age char(3);
删除表people
drop table people;
char和varchar区别:
char(n) 指定长度n,是固定长度,不够规定空格填充。
varchar(n)不固定长度,但不能超过n。
其他:int取值(-2147483648,2147483647);
float单精度小数,double双精度小数。
date日期,time时间,datetime存日期+时间。
Primary key主键 , Foreign key外键 , unique唯一 , default默认 , not null非空
(DML)
插入数据
INSERT into people VALUES(
123456789,'阿大','男',10);
定向插入数据
INSERT into people (id,name,age)
values(123456798,'啊二',15);