数据库----库的操作(字符集、校验规则)

一·:连接数据库

mysql -h 127.0.0.1 -P 3306 -u root -p

注:

  1. 如果没有写-h 127.0.01默认是本地连接
  2. -p 3306 连接的端口号为3306,如果没有写默认为3306
  3. -u root 用户是root
  4. 最后一个-p是输入密码。
    在这里插入图片描述
    二:创建数据库
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 :指定数据库字符集的校验规则。
    例:
create database db1;

当创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,默认校验规:utf8_general_ci。

  • 创建一个使用字符集为utf8的db2数据库:
create database db2 charset=utf8;
  • 创建一个字符集为utf8,校验规则为utf8_general_ci的db3数据库:
create database db3 charset=utf8 collate utf8_general_ci;

字符集

查看系统默认字符集:

show variables like 'character_set_database';

在这里插入图片描述

查看系统默认校验规则;;
在这里插入图片描述

查看数据库支持的字符集:

show charset;

在这里插入图片描述
(没有截完)

查看数据库支持的字符集校验规则:

show collation;

在这里插入图片描述
(只截了一部分)

校验规则对数据库的影响:

  • 校验规则使⽤utf8_ general_ ci[不区分⼤⼩写]
//创建数据库db1,校验规则为utf8_ general_ ci
create database db1 collate utf8_general_ci;

use test2;
//创建student表
create table student(name char(20));

//向表中添加值
insert into student values('a');
insert into student values('A');
insert into student values('b');
insert into student values('B');

//查询所有name为'a'的值
select * from student where name='a'; 

在这里插入图片描述

select * from student order by name;

按名字排序:
在这里插入图片描述

  • 校验规则使⽤utf8_ bin [区分⼤⼩写]
//创建数据库db1,校验规则为utf8_bin
create database db2 collate utf8_bin;

use db2;
//创建student表
create table student(name char(20));

//向表中添加值
insert into student values('a');
insert into student values('A');
insert into student values('B');
insert into student values('b');

//查询表中值为'a'
select * from student where name='a';

在这里插入图片描述

//对名字从小到大排序(order默认从小到大排序)
select * from student order by name;

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/sophia__yu/article/details/84719586