Mysql
DDL(database definition language)
操作数据库
查询所有数据库
show databases;
查询当前数据库
select database();
创建数据库
create database [if not exist] 数据库名 [default charset 字符集] [collate 排序规则] default charset utf8mb4;
删除数据库
drop database [if exists] 数据库名;
使用数据库
use 数据库名;
操作数据表
查询当前数据库的所有表
show tables;
查询表结构
desc 表名;
查询表建表语句
show create table 表名;
建表格式
create table 表名( 字段1 字段1类型[comment 字段1 注释], 字段2 字段2类型[comment 字段2 注释], 字段3 字段3类型[comment 字段3 注释], )[comment 表注释];
例子
id | name | age | gender |
---|---|---|---|
1 | 风清扬 | 28 | 男 |
2 | 令狐冲 | 68 | 男 |
3 | 东方不败 | 32 | 男 |
create table human( id int comment '编号', name varchar(32) comment '姓名', age int comment '年龄', gender varchar(1) comment '性别' )comment '人';
数据类型
数值类型,tinyint,smallint,mediumint,int,bigint
例子
编号,纯数字
员工工号,字符串类型,长度不超过10位
员工姓名,字符串类型,长度不超过10位
性别,男/女,存储一个汉字
年龄,正常人年龄,没有负数
身份证号,18位字符串
入职时间,取年月日
create table employee( id int, workno varchar(10), name varchar(10), gender char(1), age tinyint unsigned, idcard char(18), entrydate date );
定长字符串用char,变长字符串用varchar
表结构修改
给表添加字段
alter table 表名 add 类型(长度) [comment ''];
为刚才的表添加一个nickname字段
alter table employee add nickname varchar(20) comment ‘昵称’;
修改字段类型
alter table 表名 modify 字段名 字段类型;
修改字段类型和字段长度
alter table 表名 change 旧字段 新字段 类型长度;
将表nickname 改为username ,varchar(30)
alter table employee change nickname username varchar(30);
删除字段
alter table 表名 drop 字段名。
修改表
修改表名
alter table 表名 rename to 新表名。
删除表
drop table 表名;