#创建数据库db_user
CREATE DATABASE db_user
#删库db_user
DROP DATABASE db_user
#创建一个使用utf8字符集的hsp_db02数据库
CREATE DATABASE hsp_db02 CHARACTER SET utf8
#校对规则
默认 utf8_general_ci 不区分大小写
utf8_bin 区分大小写
#创建一个使用utf8字符集,并带校对规则的hsp_db03数据库
CREATE DATABASE hsp _dbo3 CHARACTER SET utf8 COLLATE utf8_bin
#显示所有数据库 语句(有s):
SHOW DATABASES
#显示数据库db_ name的创建 语句:
SHow CREATE DATABASE db_ name
#数据库db_name删除 语句[慎重使用]:
#IF EXISTS 表示 如果存在 就执行
DROP DATABASE [IF EXISTS]db_name
#建库建表的时候为了规避关键字 可以使用''将名字圈起来
#数据库备份命令行(在DOS执行,管理员终端可以直接使用)
#[可以备份多个数据库][文件名可以是绝对路径]
#mysqldump 在mysql安装目录的bin\下
#密码不写 回车后会要求输入 写了(可见)就会直接执行
mysqldump -u 用户名 -p [密码] -B 数据库1 数据库2 数据库n >文件名.sql
#数据库恢复(需要在Mysql命令行执行)需要先 mysql -u -root -p 回车输密码 才可使用
Source 文件名.sql
#恢复方法 2 直接编辑打开文件名.sql 复制内容到页面新建查询 全选运行即可(文件较小)
#备份单个表
mysqldump -u 用户名 -p [密码] 数据库 表1 表2 表n > c:\\文件名.sql
表复制
将表2的 数据 迁移到 表1
新建库 新建表1(和被复制表2的字段数相同
insert into 新建表1
(字段1,字段2,字段3,..字段n)
select 表2字段4,表2字段5,...表2字段n
from 被复制表2
自我复制(蠕虫复制)
内容复制 即 如果一开始是3条数据 复制后就变成6条(用于测试运行效率)
insert into 新建表1
select * from 新建表1
表表复制和自我复制相结合的表复制:
新方式:create table 新建表1 like 已存在表2【该语句即是把表2的结构(列信息)复制到表1】
insert into 表1
select * from 表2【将表2的信息也添加到表1】
表去重
create table 新建表1 like 已存在表2【该语句即是把表2的结构(列信息)复制到表1】
insert into 表1
select distinct * from 表2【将表2的信息去重后添加到表1】
执行完要删掉过渡表 节省空间
有时在实际应用中,为了合并多个select语句的结果(一样字段的结果),可以使用集合操作符号
union (去掉 所有字段相同的结果的重复项), union all(不去重)
用法 : select语句1 union/union all select语句2
.