目录
数据库类型
1.整数:
int(m) 和 bigint(m) m代表显示长度(补0) bigint等效java中的long
create table t_int(id int,age int(10) zerofill);
insert into t_int values(1,18);
select * from t_int;
2. 浮点数:
double(m,d) m总长度 d小数长度 double(5,3) 26.378 ,decimal是一个超高精度的浮点数,精度远高于double,只有涉及到超高精度运算时才会使用
3. 字符串:
- char(m)不可变长度 char(5) "abc" 占5 最大字符长度255,
- varchar(m) 可变长度 节省空间 最大字符长度为65535 但是超过255建议使用text
- text可变长度的字符串类型 长度65535
4. 日期类型:
- date: 只能保存年月日
- time: 只能保存时分秒
- datetime: 默认值null 最大值9999-12-31
- timestamp: 时间戳 默认值当前系统时间 2038-1-19
create table t_date(t1 date,t2 time,t3 datetime,t4 timestamp);
insert into t_date values("2019-10-12",null,null,null);
insert into t_date values(null,"10:37:20",
"2019-10-11 11:11:11",null);
经常使用的数据库操作
主键约束(primary key)
- 约束: 创建表时给表字段添加的限制条件
- 主键: 表示数据唯一性的字段称为主键
- 主键约束: 唯一且非空
create table t1(id int primary key,name varchar(10));
insert into t1 values(1,'aaa'); //成功
insert into t1 values(2,'aaa'); //成功
insert into t1 values(2,'bbb'); //报错 不能重复
insert into t1 values(null,'ccc');// 报错 不能为空
主键约束+自增(auto_increment)
- 从历史最大值+1 只增不减
create table t2(id int primary key auto_increment,name varchar(10));
insert into t2 values(null,'aaa'); //1
insert into t2 values(null,'bbb'); //2
insert into t2 values(10,'bbb'); //10
insert into t2 values(null,'ccc'); //11
delete from t2 where id>=10;
insert into t2 values(null,'ddd'); //12
注释(comment)
- 创建表时给字段添加的介绍信息
create table t3 (id int comment '这是主键',name varchar(10) comment '这是名字');
show create table t3;
导入*.sql 文件
- linux系统: 把文件放到桌面
source /home/soft01/桌面/xxx.sql;
- windows系统: 把文件放到d盘根目录
source d:/xxx.sql;
- 检查是否成功:
1. show databases; 查看是不是出现了一个newdb3数据库
2. use newdb3; 使用 导入的这个数据库
3. show tables; 查看是否有 emp和dept两个表
4. select * from emp 查看数据 如果出现乱码 执行 set names gbk;后再查询