数据库操作
1.查询所有数据库
show databases;
2.查询问当前数据库(正在操作的数据库)
select database();
3.创建数据库
create database [if not exists] 数据库名称 [default charset 字符集] [collate 字符集规则 ];
create database if not exists bank default charset utf8mb4 collate utf8mb4_general_ci;
--等价于下面的语句 default charset= collate= 可以添加等号更明确
--多说一句注释,“--”是注释 “#”是mysql专用注释,这个看个人习惯,如果想尽可能的多个数据库间通用,建议还是用“--”
--以上是单行注释,多行注释是"/* .... */"
--再多说一句,utf8字符集默认是3个字节,utf8mb4设置汉字要好用一些,推荐用4个字节设置带有汉字的字符集,也推荐国人都用这个。
create database if not exists bank default charset=utf8mb4 collate=utf8mb4_general_ci;
下面是所有的charset列表:
show charset;
下面是collation列表,似乎大家都不是特别在意,因为是规定大小写敏感。
ci是Case Insensitive缩写,大小写不敏感;
cs是Case Sensitive缩写,大小写敏感;
show collation;
4.删除数据库
drop database [if exists] 数据库名;
drop database if exists bank;
5.使用数据库
use 数据库名称
use bank;
6.创建表
create table 表名称
(
字段1 数据类型 comment “注释内容”
)
create table ttt
(
ttt_id int primary key comment "id号",
ttt_name nvarchar(20) comment "名字"
)
数据类型大概说下,说太多不容易记住,优先说能记住的,我也只想记住一些常用的,不常用的实在是记不住,用的时候一查即可
数值型:
int 整数 4字节
如果是无符号则在int 后面加unsigned
double 浮点型
字符型:
varchar() 变长字符串
text() 长文本字符串
日期和时间类型:
date 日期
time 时间
datatime 日期+时间
create table empp
(
emp_id int primary key comment '编号',
eworkno varchar(10) comment '员工工号',
ename varchar(30) comment '员工姓名',
esex char(1) comment '性别',
eage tinyint unsigned comment '年龄',
pIDcard char(18) comment '身份证号码',
eentrydate date comment '入职时间'
) comment '员工表';
修改表结构:
1.增加字段
alter table 表名 add 字段 数据类型 comment ‘注释’ 【约束条件】;
alter table empp add eaddress nvarchar(100) comment '员工地址' ;
2.更新字段数据类型
alter table 表名 modify 字段名 新数据类型 (长度);
alter table empp modify eaddress text(100);
3.修改字段名和数据类型
alter table 表名 change 旧字段名 新字段名 数据类型(长度);
alter table empp change eaddress etel varchar(20);
4.删除字段
alter table 表名 drop 字段名
alter table empp drop etel;
5.修改表名
alter table 原表名 rename to 新表名;
alter table empp rename to employee;
show tables;
6.删除表名
drop table if exists 表名;
7.删除表并重新创建表
truncate table 表名;
drop table if exists empp;
truncate table employee;
show tables;