库的操作和表的操作
- 一、库的操作
- 1、创建数据库(create)
- 2、字符集和校验规则
- (1)查看系统默认字符集以及校验规则
- (2)查看数据库支持的字符集
- (3)查看数据库支持的字符集校验规则
- (4)校验规则对数据库的影响
- 3、查看数据库(show)
- 4、显示创建语句(show)
- 5、修改数据库(alter)
- 6、备份、删除和恢复
- 7、查看链接情况(show)
- 二、表的操作
- 1、创建表(create)
- 2、查看表结构
- 3、查看创建表的信息(show)
- 4、 修改表
- (1)改当前表名(rename)
- (2)增加一列信息(add)
- (3)修改表内数据(modify)
- (4)删除表中信息(drop)
- (5)修改表中信息的名称(change)
一、库的操作
1、创建数据库(create)
语法:CREATE DATABASE [IF NOT EXISTS] db_name[create_specification [,create_specification] …]
create_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
说明:大写的表示关键字
[] 是可选项
CHARACTER SET: 指定数据库采用的字符集
COLLATE: 指定数据库字符集的校验规则
2、字符集和校验规则
创建数据库的时候,有两个编码集:
1、数据库编码集–数据库未来存储数据
2、数据库校验集–支持数据库进行字段比较使用的编码,本质上也是一种读取数据库中的数据的采用的编码格式。
3、数据库无论对数据做任何操作,都必须保证操作和编码是一致的!
(1)查看系统默认字符集以及校验规则
show variables like ‘character_set_database’;
show variables like ‘collation_database’;
(2)查看数据库支持的字符集
show charset;
(3)查看数据库支持的字符集校验规则
show collation;
汇个总:
(4)校验规则对数据库的影响
做一个规则看是否区分大小写的功能:
创建一个数据库,校验规则使用utf8_ general_ ci[不区分大小写]
创建一个数据库,校验规则使用utf8_ bin[区分大小写]
3、查看数据库(show)
show databases;
4、显示创建语句(show)
show create database 数据库名;
注意:
MySQL 建议我们关键字使用大写,但是不是必须的。
数据库名字的反引号``,是为了防止使用的数据库名刚好是关键字
/*!40100 default… */ 这个不是注释,表示当前mysql版本大于4.01版本,就执行这句话
5、修改数据库(alter)
ALTER DATABASE db_name
[alter_spacification [,alter_spacification]…]
alter_spacification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
对数据库的修改主要指的是修改数据库的字符集,校验规则
如下样例,把test2中的字符集和字符集校验规则改成gdk了。
6、备份、删除和恢复
删除:DROP DATABASE [IF EXISTS] db_ name;
数据库内部看不到对应的数据库
对应的数据库文件夹被删除,级联删除,里面的数据表全部被删
备份:# mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
恢复:source+文件路径
注意:如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原。
先备份一下在llinux文件下存着!
再删除对应文件!
再利用source+文件路径恢复!
7、查看链接情况(show)
show processlist;
二、表的操作
1、创建表(create)
CREATE TABLE table_name (
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;
field 表示列名
datatype 表示列的类型
character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
创建两个不同字符集校验规则的表:
如果我们最后不加enginee的话默认是InnodDB规则了,因为我们配置文件中自然的是InnodDB类型的校验规则!
注意:不同的存储引擎,创建表的文件不一样。
users 表存储引擎是 MyISAM ,在数据目中有三个不同的文件,分别是:
users.frm:表结构
users.MYD:表数据
users.MYI:表索引
2、查看表结构
desc 表名;
3、查看创建表的信息(show)
show create table users \G
4、 修改表
ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column
datatype]…);
ALTER TABLE tablename MODIfy (column datatype [DEFAULT expr][,columndatatype]…);
ALTER TABLE tablename DROP (column);
(1)改当前表名(rename)
alter table users rename to user;