·库操作
·创建数据库
create database 数据库名字 [库选项];
库选项:数据库的相关属性
字符集:charset 代表着当前数据库下的所有表储存的数据默认指定的字符集(如果当前不指定,那么采用DBMS默认的)
校对集:collate
create database 数据库名字 charset 字符集名字;
·显示数据库
1. 显示全部
show databases;
2.显示部分
show databases like '匹配模式';
_:匹配当前位置单个字符
%:匹配指定位置多个字符
获取以my开头的全部数据库:‘my%’;
获取m开头,后面第一个字母不确定,最后为database的数据库:‘m_database’;
获取以database结尾的数据库:’%database’
3. 显示数据库创建语句
show create database 数据库名字;
·选择数据库
use 数据库名字;
·修改数据库
修改数据库字符集(库选项):字符集和校对集
alter database 数据库名字 charset [=] 字符集;
·删除数据库
drop database 数据库名字;
删除虽简单,但是切记要做好安全操作,确保里面数据没有问题。
·数据表操作
·创建数据表
1. 普通创建表
create table 表名(字段名 字段类型[字段属性].....)[表选项];
create table 数据库名字.表名();
表选项:
engine:存储引擎,MySQL提供的具体存储数据的方式,默认有innodb(以前是myisam)
charset:只对自己表有效
collate:同上
CREATE TABLE class(
name VARCHAR(10)
)engine innodb charset utf8;
2. 复制已有表结构
从已经存在的表复制一份(只复制结构,如果表中有数据不复制)
create table 新表名 like 表名; --使用数据库.表名,就可以在任何数据库下访问其他数据库的表名
·显示数据表
1. 显示所有表
show tables;
2. 匹配显示
show tables like '匹配模式';
3. 显示表结构
本质:显示表中所包含的字段信息(名字,类型,属性等)
describe 表名;
show colums from 表名;
desc 表名; --三个语句效果一样,一般用desc,因为最短
4. 显示表创建语句
show create table 表名;
·设置表属性
alter table 表名 表选项 新值; --表选项:engine charset collate
·修改表结构
1. 修改表名
rename table 旧表名 to 新表名;
2. 新增字段
alter table 表名 add [column] 新字段名 字段类型 [列属性] [位置];
--位置:first第一个 after某某之后
--默认加到表的最后面
--实例
alter table teacher add column age int first;
3. 修改字段名
alter table 表名 change 旧字段名 新字段名 字段类型 [列属性] [新位置];
4. 修改字段类型(属性)
alter table 表名 modify 字段名 新类型 [新属性][新位置];
5. 删除字段
alter table 表名 drop 字段名;
6. 删除表结构
drop table 表名[,表名2....]; --可以同时删除多个数据表
·数据操作
·插入操作
insert into 表名[(字段列表)] values (对应字段的值);
insert into 表名 values (对应表结构的值); --所有字段
·查询操作
1. 查询表中全部数据
select * from 表名; -- *表示匹配所有的字段
2.查询表中部分字段
select 字段列表 from 表名;
3.简单条件查询数据
select 字段列表/* from 表名 where 字段名 = 值;
·删除操作
delete from 表名[where 条件]; --如果没有where会全部删除
·更新操作
update 表名 set 字段名 = 新值 [where 条件]; --如果没有where会全部修改
--实例
update my_student set class_id = 1 where stu_id in ('097','010');