数据库 --- 2 库 ,表
一.库操作
1.库名的命名规范
① 可以由字母,数字,下划线,@,#,$
② 区分大小写
③唯一性
④不能使用关键字 create select
⑤不能单独使用数字
⑥最长128位
2.基本操作
① 增: create database 数据库名 charset utf8;
② 删: drop datebase 数据库名;
③改: alter datebase 库名 charset utf8;
④ 查: show databases; 查看所有库
show create database 库名; 某个库的信息
二.表操作
(1).表介绍
第一行的id, name2, age 是字段
每一行是一条记录
(2).mysql 存储引擎
① 几种常用引擎
1),innodb 引擎(常用)
2),myisam 引擎
3),memory 引擎
4),blackhole 引擎
②存储引擎的使用
③查看
show engines; 查看mysql 所有的引擎
show varibles like "storage_engine%";
查看当前正在使用的引擎
(3).创建表
实例:
(4)查看表的结构
(5)基本数据类型
① 整数型
mysql> create table t1(x tinyint); #默认为有符号,即数字前有正负号
mysql> create table t2(x tinyint unsigned); 设置成无符号
②浮点型
a. float(255,30) 单精度浮点数(精度相对较低)
b. double(255,30) 双精度浮点数
c. decimal(65,30) 传的是字符串 (精度相对最高)
前面的数(255)是总位数 后面的数(30)为小数部分
③日期类型
a.YEAR YYYY(范围:1901/2155) 2018 b.DATE YYYY-MM-DD(范围:1000-01-01/9999-12-31)例:2018-01-01 c.TIME HH:MM:SS(范围:'-838:59:59'/'838:59:59')例:12:09:32 d.DATETIME YYYY-MM-DD HH:MM:SS(范围:1000-01-01 00:00:00/9999-12-31 23:59:59)
例: 2018-01-01 12:09:32 e.TIMESTAMP YYYYMMDD HHMMSS(范围:1970-01-01 00:00:00/2037 年某时)
实例
④字符串类型
a.char类型:定长,简单粗暴,浪费空间,存取速度快
b.varchar类型:变长,精准,节省空间,存取速度慢
⑤enum枚举 (多选一)
⑥ set 集合 (在范围内选一个或多个)
(6) 完整性约束
①not null 与 default
②unique 独一无二的 如身份证号
联合唯一(两项不可同时相同)
③primary key 主键
④auto_increment 自动增长
⑤foreign key 外键 (标明表与表之间的关系)
a.一对多关系
示例:
删除关联
添加关联
b.多对多关系(建立第三张表)
c.一对一关系(至少要 不为空 且 独一无二)
(7)修改表alter table