-- 启动数据库服务
net start mysql57;
net stop mysql57;
-- 创建数据库
create database mydb(数据库的名字)
create database mydb charset gbk;//创建数据库并指定字符集
-- 显示数据库
show databases //显示全部数据库
匹配模式:
show databases like _d;//匹配当前位置单子字符
show databases like %d;//匹配指定位置多个字符
show create database mydb;//显示数据库创建语句
use mydb;(数据库的名字)//选择数据库
alter database mydb charset gbk;//修改数据库字符集
drop database mydb;(数据库的名字)//删除数据库
-- 表
-- 创建表 两种写法
use mydb;
create table class(name varchar(10));//class 表名 name 字段名
或者create table mydb.class(name varchar(10));
create database if not exists mydb;//如果不存在创建 存在就不创建了 相当于容错
-- 复制已有的表
create table 新表名 like 表名 //只能复制结构 不能复制数据
create table new_emp select *from emp;//不仅能复制结构也能复制数据
-- 显示所有表
show tables;
-- 显示表结构
desc emp(表名);
describe emp;
show columns from emp;
-- 显示表创建语句
show create table class(表名);
-- 更改表的字符集
alter table class charset gbk;
-- 修改表的名字
rename table emp to new_emp;
-- 更改表 新增一个字段
alter table emp add deptno int;//在emp表中加入deptno字段
-- 更改表中的字段名
alter table emp change deptno deptno1 int;//把表emp中字段deptno 改为deptno1
-- 更改表中的字段的类型
alter table emp modify deptno TINYINT;// 将表emp的字段deptno字段类型改了
-- 删除表中的字段
alter table emp drop deptno;//将emp 表中的字段deptno删掉
-- 删除表
drop table emp;//删除表emp
drop table emp,emp1;//删除多张表
-- 向emp表中添加数据
insert into emp vaules();
insert into emp vaules(20,30);//插入数据时没有指定表中的具体字段,值列表需要和表结构相对应
insert into emp(age,deptno) values(5,40);//插入数据时指定表中的具体字段(1个或多个),值列表需要和表定义的字段相对应,而不用和表结构对应
-- 查询表中的数据
select *from emp;
select age from emp;//查看表中某一具体字段
-- 修改表中的数据
update emp set age=100 where deptno=1;//update...set....
-- 删除表中的某个字段所对应的行数据
delete from deptno where age=10;
-- 查看字符集
show variables like '%character%';
-- 更改字符集
set character_set_server =utf8;