MYSQL 入门操作学习指南(筑库,建表 增删改查 、表结构修改、函数、字符集校对等)

MYSQL 入门操作学习指南(建库,建表 增删改查 、表结构修改、函数、字符集校对等)

MYSQL 数据库的操作二

登录数据库

C:\Documents and Settings\Administrator>mysql -uroot -p

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.5.20 MySQL Community Server (GPL)

 

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

 

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

显示数据库

mysql> show databases ;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mrzhou             |

| mysql              |

| performance_schema |

| test               |

| tt                 |

+--------------------+

6 rows in set (0.05 sec)

创建数据库并且指定指定字符集

mysql> create database mysql_mr default character set utf8;

Query OK, 1 row affected (0.01 sec)

 

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mrzhou             |

| mysql              |

| mysql_mr           |

| performance_schema |

| test               |

| tt                 |

+--------------------+

7 rows in set (0.00 sec)

创建表并且指定字符集

mysql> create table user(id int(10) unsigned primary key auto_increment,name var

char(60),age tinyint(2)) default character set utf8;

Query OK, 0 rows affected (0.11 sec)

 

mysql> desc user;

+-------+------------------+------+-----+---------+----------------+

| Field | Type             | Null | Key | Default | Extra          |

+-------+------------------+------+-----+---------+----------------+

| id    | int(10) unsigned  | NO   | PRI  | NULL    | auto_increment |

| name | varchar(60)      | YES  |     | NULL    |                |

| age   | tinyint(2)       | YES  |     | NULL    |                |

+-------+------------------+------+-----+---------+----------------+

3 rows in set (0.01 sec)

查询数据库的字符集等相关信息

mysql> status;

--------------

mysql  Ver 14.14 Distrib 5.5.20, for Win32 (x86)

 

Connection id:          2

Current database:       mysql_mr

Current user:           root@localhost

SSL:                    Not in use

Using delimiter:        ;

Server version:         5.5.20 MySQL Community Server (GPL)

Protocol version:       10

Connection:             localhost via TCP/IP

Server characterset:    latin1

Db     characterset:    utf8

Client characterset:    latin1

Conn.  characterset:    latin1

TCP port:               3306

Uptime:                 1 hour 4 min 28 sec

 

Threads: 1  Questions: 21  Slow queries: 0  Opens: 36  Flush tables: 1  Open tab

les: 1  Queries per second avg: 0.005

--------------

MYSQL 的数据类型

整型

tinyint     1字节 -128~127(有符号)   0~255(无符号)

smallint    2字节  -32768-32767         0~65535 (无符号)

mediumint  3字节 -8388608~8388607   0~16777215(无符号)

int         4字节  -2147483648 ~2147483647   0~4294967295(无符号)

bigint  8字节  -92333720368547758089233372036854775808

浮点数

Float  4个字节  -3.402823466E+381.175494351E

Double 8个字节

DecimalM,N M表示整个数量 N表示小数位数

字符串

NULL 不确定的值

mysql> create table fe(price decimal(5,2));

Query OK, 0 rows affected (0.08 sec)

 

mysql> desc fe;

+-------+--------------+------+-----+---------+-------+

| Field | Type         | Null | Key | Default | Extra |

+-------+--------------+------+-----+---------+-------+

| price | decimal(5,2) | YES  |     | NULL    |       |

+-------+--------------+------+-----+---------+-------+

1 row in set (0.03 sec)

 

mysql> insert into fe values(3.21234)

    -> ;

Query OK, 1 row affected, 1 warning (0.03 sec)

 

mysql> select * from fe;

+-------+

| price |

+-------+

|  3.21 |

+-------+

1 row in set (0.00 sec)

修改数据类型

mysql> alter table fe modify price decimal(10,5);

Query OK, 1 row affected (0.23 sec)

Records: 1  Duplicates: 0  Warnings: 0

 

mysql> insert into fe values(3.21234)

    -> ;

Query OK, 1 row affected (0.03 sec)

 

mysql> select * from fe;

+---------+

| price   |

+---------+

| 3.21000 |

| 3.21234 |

+---------+

2 rows in set (0.00 sec)

 

 

 

MYSQL 简单查询

 

 

 

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mrzhou             |

| mysql              |

| mysql_mr           |

| performance_schema |

| test               |

| tt                 |

+--------------------+

7 rows in set (0.00 sec)

 

mysql> use mrzhou;

Database changed

mysql> create table stu(id int(10) primary key auto_increment,sname char(30) not

 null,sex tinyint(1) default 0,qq varchar(255)) default character set utf8 engin

e myisam;

Query OK, 0 rows affected (0.06 sec)

 

插入数据

mysql> DESC stu;

+-------+--------------+------+-----+---------+----------------+

| Field | Type         | Null | Key | Default | Extra          |

+-------+--------------+------+-----+---------+----------------+

| id    | int(10)      | NO   | PRI | NULL    | auto_increment |

| sname | char(30)     | NO   |     | NULL    |                |

| sex   | tinyint(1)   | YES  |     | 0       |                |

| qq    | varchar(255) | YES  |     | NULL    |                |

+-------+--------------+------+-----+---------+----------------+

4 rows in set (0.00 sec)

 

mysql> insert into stu(sname,sex,qq) values("mrzhou",0,3234224);

Query OK, 1 row affected (0.00 sec)

 

mysql> insert into stu(sname,sex,qq) values("stephenzhou",0,333468834);

Query OK, 1 row affected (0.00 sec)

 

mysql> insert into stu(sname,sex,qq) values("李四",1,893468834);

Query OK, 1 row affected (0.00 sec)

 

mysql> insert into stu(sname,sex,qq) values("李花",1,82468834);

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from stu;

+----+-------------+------+-----------+

| id | sname       | sex  | qq        |

+----+-------------+------+-----------+

|  1 | mrzhou      |    0 | 3234224   |

|  2 | stephenzhou |    0 | 333468834 |

|  3 | 李四        |    1 | 893468834 |

|  4 | 李花        |    1 | 82468834  |

+----+-------------+------+-----------+

4 rows in set (0.00 sec)

 

 

查询where

mysql> select * from stu where sname ="李四";

+----+-------+------+-----------+

| id | sname | sex  | qq        |

+----+-------+------+-----------+

|  3 | 李四  |    1 | 893468834 |

+----+-------+------+-----------+

1 row in set (0.00 sec)

Like查询

mysql> select * from stu where sname like "%";

+----+-------+------+-----------+

| id | sname | sex  | qq        |

+----+-------+------+-----------+

|  3 | 李四  |    1 | 893468834 |

|  4 | 李花  |    1 | 82468834  |

+----+-------+------+-----------+

2 rows in set (0.00 sec)

 

mysql> select * from stu where sname like "%s%";

+----+-------------+------+-----------+

| id | sname       | sex  | qq        |

+----+-------------+------+-----------+

|  2 | stephenzhou |    0 | 333468834 |

+----+-------------+------+-----------+

1 row in set (0.00 sec)

mysql> select * from stu where qq like "3%"

    -> ;

+----+-------------+------+-----------+

| id | sname       | sex  | qq        |

+----+-------------+------+-----------+

|  1 | mrzhou      |    0 | 3234224   |

|  2 | stephenzhou |    0 | 333468834 |

+----+-------------+------+-----------+

2 rows in set (0.00 sec)

 

mysql> select * from stu where qq like "%3%";

+----+-------------+------+-----------+

| id | sname       | sex  | qq        |

+----+-------------+------+-----------+

|  1 | mrzhou      |    0 | 3234224   |

|  2 | stephenzhou |    0 | 333468834 |

|  3 | 李四        |    1 | 893468834 |

|  4 | 李花        |    1 | 82468834  |

+----+-------------+------+-----------+

4 rows in set (0.00 sec)

 

 

If三元表达式

mysql> select sname,if(sex,"小伙子","小姑娘"),qq from stu;

+-------------+---------------------------+-----------+

| sname       | if(sex,"小伙子","小姑娘") | qq        |

+-------------+---------------------------+-----------+

| mrzhou      | 小姑娘                    | 3234224   |

| stephenzhou | 小姑娘                    | 333468834 |

| 李四        | 小伙子                    | 893468834 |

| 李花        | 小伙子                    | 82468834  |

+-------------+---------------------------+-----------+

4 rows in set (0.00 sec)

 

 

As列名

mysql> select sname,if(sex,"小伙子","小姑娘") as sex ,qq from stu;

+-------------+--------+-----------+

| sname       | sex    | qq        |

+-------------+--------+-----------+

| mrzhou      | 小姑娘 | 3234224   |

| stephenzhou | 小姑娘 | 333468834 |

| 李四        | 小伙子 | 893468834 |

| 李花        | 小伙子 | 82468834  |

+-------------+--------+-----------+

4 rows in set (0.00 sec)

连接字符串 concat

mysql> select concat("姓名:",sname,"性别:",if(sex,"",""),"QQ:",qq) from stu;

 

+----------------------+

| concat("姓名:",sname,"性别:",if(sex,"",""),"QQ:",qq) |

+----------------------+

| 姓名:mrzhou性别:QQ:3234224                             |

| 姓名:stephenzhou性别:QQ:333468834                      |

| 姓名:李四性别:QQ:893468834                             |

| 姓名:李花性别:QQ:82468834                              |

+----------------------+

4 rows in set (0.00 sec)

条件和列的别名

mysql> select concat("姓名:",sname,"性别:",if(sex,"",""),"QQ:",qq)as stuinfo

 from stu

    -> where sex =0;

+-------------------------------------+

| stuinfo                             |

+-------------------------------------+

| 姓名:mrzhou性别:QQ:3234224        |

| 姓名:stephenzhou性别:QQ:333468834 |

+-------------------------------------+

2 rows in set (0.00 sec)

 

 

增加表字段

mysql> alter table stu add birday date;

Query OK, 4 rows affected (0.08 sec)

Records: 4  Duplicates: 0  Warnings: 0

 

mysql> desc stu;

+--------+--------------+------+-----+---------+----------------+

| Field  | Type         | Null | Key | Default | Extra          |

+--------+--------------+------+-----+---------+----------------+

| id     | int(10)      | NO   | PRI | NULL    | auto_increment |

| sname  | char(30)     | NO   |     | NULL    |                |

| sex    | tinyint(1)   | YES  |     | 0       |                |

| qq     | varchar(255) | YES  |     | NULL    |                |

| birday | date         | YES  |     | NULL    |                |

+--------+--------------+------+-----+---------+----------------+

5 rows in set (0.00 sec)

 

 

表的更新

mysql> update stu set birday ="1990/2/23";

Query OK, 4 rows affected (0.00 sec)

Rows matched: 4  Changed: 4  Warnings: 0

 

mysql> select * from stu;

+----+-------------+------+-----------+------------+

| id | sname       | sex  | qq        | birday     |

+----+-------------+------+-----------+------------+

|  1 | mrzhou      |    0 | 3234224   | 1990-02-23 |

|  2 | stephenzhou |    0 | 333468834 | 1990-02-23 |

|  3 | 李四        |    1 | 893468834 | 1990-02-23 |

|  4 | 李花        |    1 | 82468834  | 1990-02-23 |

+----+-------------+------+-----------+------------+

4 rows in set (0.00 sec)

 

 

排序

Limit

mysql> select * from stu order by id desc limit 2 ;

+----+-------+------+-----------+------------+

| id | sname | sex  | qq        | birday     |

+----+-------+------+-----------+------------+

|  4 | 李花  |    1 | 82468834  | 1990-02-23 |

|  3 | 李四  |    1 | 893468834 | 1990-02-23 |

+----+-------+------+-----------+------------+

2 rows in set (0.00 sec)

 

 

利用limit取按id倒序倒数第2条记录

mysql> select * from stu order by id desc limit 1,1;

+----+-------+------+-----------+------------+

| id | sname | sex  | qq        | birday     |

+----+-------+------+-----------+------------+

|  3 | 李四  |    1 | 893468834 | 1990-02-23 |

+----+-------+------+-----------+------------+

1 row in set (0.00 sec)

 

mysql>  select * from stu order by id desc;

+----+-------------+------+-----------+------------+

| id | sname       | sex  | qq        | birday     |

+----+-------------+------+-----------+------------+

|  4 | 李花        |    1 | 82468834  | 1990-02-23 |

|  3 | 李四        |    1 | 893468834 | 1990-02-23 |

|  2 | stephenzhou |    0 | 333468834 | 1990-02-02 |

|  1 | mrzhou      |    0 | 3234224   | 1990-02-23 |

+----+-------------+------+-----------+------------+

4 rows in set (0.00 sec)

 

 

通过Distinct或者group by 过滤重复的记录

mysql> select year(birday) s from stu;

+------+

| s    |

+------+

| 1990 |

| 1990 |

| 1990 |

| 1990 |

+------+

4 rows in set (0.00 sec)

 

mysql> select year(birday) s from stu group by s;

+------+

| s    |

+------+

| 1990 |

+------+

1 row in set (0.00 sec)

 

mysql> select distinct year(birday) s from stu ;

+------+

| s    |

+------+

| 1990 |

+------+

1 row in set (0.00 sec)

 

 

 

MYSQL 字符集utf8 gbk big5

 

二进制  binary varbinary blob 

声音图像等二进制数据

非二进制 char varchar text

 

字符集的概念

Gbk  gb2312  utf8 big5

 

 

查询mysql支持的字符集

mysql> show character set;

+----------+-----------------------------+---------------------+--------+

| Charset  | Description                 | Default collation   | Maxlen |

+----------+-----------------------------+---------------------+--------+

| big5     | Big5 Traditional Chinese    | big5_chinese_ci     |      2 |

| dec8     | DEC West European           | dec8_swedish_ci     |      1 |

| cp850    | DOS West European           | cp850_general_ci    |      1 |

| hp8      | HP West European            | hp8_english_ci      |      1 |

| koi8r    | KOI8-R Relcom Russian       | koi8r_general_ci    |      1 |

| latin1   | cp1252 West European        | latin1_swedish_ci   |      1 |

| latin2   | ISO 8859-2 Central European | latin2_general_ci   |      1 |

| swe7     | 7bit Swedish                | swe7_swedish_ci     |      1 |

| ascii    | US ASCII                    | ascii_general_ci    |      1 |

| ujis     | EUC-JP Japanese             | ujis_japanese_ci    |      3 |

| sjis     | Shift-JIS Japanese          | sjis_japanese_ci    |      2 |

| hebrew   | ISO 8859-8 Hebrew           | hebrew_general_ci   |      1 |

| tis620   | TIS620 Thai                 | tis620_thai_ci      |      1 |

| euckr    | EUC-KR Korean               | euckr_korean_ci     |      2 |

| koi8u    | KOI8-U Ukrainian            | koi8u_general_ci    |      1 |

| gb2312   | GB2312 Simplified Chinese   | gb2312_chinese_ci   |      2 |

| greek    | ISO 8859-7 Greek            | greek_general_ci    |      1 |

| cp1250   | Windows Central European    | cp1250_general_ci   |      1 |

| gbk      | GBK Simplified Chinese      | gbk_chinese_ci      |      2 |

| latin5   | ISO 8859-9 Turkish          | latin5_turkish_ci   |      1 |

| armscii8 | ARMSCII-8 Armenian          | armscii8_general_ci |      1 |

| utf8     | UTF-8 Unicode               | utf8_general_ci     |      3 |

| ucs2     | UCS-2 Unicode               | ucs2_general_ci     |      2 |

| cp866    | DOS Russian                 | cp866_general_ci    |      1 |

| keybcs2  | DOS Kamenicky Czech-Slovak  | keybcs2_general_ci  |      1 |

| macce    | Mac Central European        | macce_general_ci    |      1 |

| macroman | Mac West European           | macroman_general_ci |      1 |

| cp852    | DOS Central European        | cp852_general_ci    |      1 |

| latin7   | ISO 8859-13 Baltic          | latin7_general_ci   |      1 |

| utf8mb4  | UTF-8 Unicode               | utf8mb4_general_ci  |      4 |

| cp1251   | Windows Cyrillic            | cp1251_general_ci   |      1 |

| utf16    | UTF-16 Unicode              | utf16_general_ci    |      4 |

| cp1256   | Windows Arabic              | cp1256_general_ci   |      1 |

| cp1257   | Windows Baltic              | cp1257_general_ci   |      1 |

| utf32    | UTF-32 Unicode              | utf32_general_ci    |      4 |

| binary   | Binary pseudo charset       | binary              |      1 |

| geostd8  | GEOSTD8 Georgian            | geostd8_general_ci  |      1 |

| cp932    | SJIS for Windows Japanese   | cp932_japanese_ci   |      2 |

| eucjpms  | UJIS for Windows Japanese   | eucjpms_japanese_ci |      3 |

+----------+-----------------------------+---------------------+--------+

39 rows in set (0.00 sec)

 

 

 

设置字段的字符集

 

 

mysql> create table demo (name varchar(30) character set utf8,name2 varchar(30)c

haracter set gbk);

Query OK, 0 rows affected (0.16 sec)

 

mysql> show create table demo;

+-------+-----------------------------------

--------------------------------------------

------------------+

| Table | Create Table

 

                  |

+-------+-----------------------------------

--------------------------------------------

------------------+

| demo  | CREATE TABLE `demo` (

  `name` varchar(30) CHARACTER SET utf8 DEFAULT NULL,

  `name2` varchar(30) CHARACTER SET gbk DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1 |

+-------+-----------------------------------

--------------------------------------------

------------------+

1 row in set (0.00 sec)

 

 

 

字符集的长度

mysql> select length(name),length(name2) from demo;

+--------------+---------------+

| length(name) | length(name2) |

+--------------+---------------+

|            1 |             0 |

|            1 |             1 |

|            1 |             1 |

|            4 |             1 |

|            4 |             1 |

+--------------+---------------+

5 rows in set (0.00 sec)

 

字节长度

 

 

字符长度

mysql> select  char_length(name),char_length(name2) from demo;

+-------------------+--------------------+

| char_length(name) | char_length(name2) |

+-------------------+--------------------+

|                 1 |                  0 |

|                 1 |                  1 |

|                 1 |                  1 |

|                 2 |                  1 |

|                 2 |                  1 |

+-------------------+--------------------+

5 rows in set (0.00 sec)

 

 

 

 

查看字符集的校对规则

mysql> show collation

    -> ;

+-----------------------+----------+-----+---------+----------+---------+

| Collation             | Charset  | Id  | Default | Compiled | Sortlen |

+-----------------------+----------+-----+---------+----------+---------+

| big5_chinese_ci       | big5     |   1 | Yes     | Yes      |       1 |

| big5_bin              | big5     |  84 |         | Yes      |       1 |

| dec8_swedish_ci       | dec8     |   3 | Yes     | Yes      |       1 |

| dec8_bin              | dec8     |  69 |         | Yes      |       1 |

| cp850_general_ci      | cp850    |   4 | Yes     | Yes      |       1 |

| cp850_bin             | cp850    |  80 |         | Yes      |       1 |

| hp8_english_ci        | hp8      |   6 | Yes     | Yes      |       1 |

| hp8_bin               | hp8      |  72 |         | Yes      |       1 |

| koi8r_general_ci      | koi8r    |   7 | Yes     | Yes      |       1 |

| koi8r_bin             | koi8r    |  74 |         | Yes      |       1 |

| latin1_german1_ci     | latin1   |   5 |         | Yes      |       1 |

| latin1_swedish_ci     | latin1   |   8 | Yes     | Yes      |       1 |

| latin1_danish_ci      | latin1   |  15 |         | Yes      |       1 |

| latin1_german2_ci     | latin1   |  31 |         | Yes      |       2 |

| latin1_bin            | latin1   |  47 |         | Yes      |       1 |

| latin1_general_ci     | latin1   |  48 |         | Yes      |       1 |

| latin1_general_cs     | latin1   |  49 |         | Yes      |       1 |

| latin1_spanish_ci     | latin1   |  94 |         | Yes      |       1 |

| latin2_czech_cs       | latin2   |   2 |         | Yes      |       4 |

| latin2_general_ci     | latin2   |   9 | Yes     | Yes      |       1 |

| latin2_hungarian_ci   | latin2   |  21 |         | Yes      |       1 |

| latin2_croatian_ci    | latin2   |  27 |         | Yes      |       1 |

| latin2_bin            | latin2   |  77 |         | Yes      |       1 |

| swe7_swedish_ci       | swe7     |  10 | Yes     | Yes      |       1 |

| swe7_bin              | swe7     |  82 |         | Yes      |       1 |

| ascii_general_ci      | ascii    |  11 | Yes     | Yes      |       1 |

| ascii_bin             | ascii    |  65 |         | Yes      |       1 |

| ujis_japanese_ci      | ujis     |  12 | Yes     | Yes      |       1 |

| ujis_bin              | ujis     |  91 |         | Yes      |       1 |

| sjis_japanese_ci      | sjis     |  13 | Yes     | Yes      |       1 |

| sjis_bin              | sjis     |  88 |         | Yes      |       1 |

| hebrew_general_ci     | hebrew   |  16 | Yes     | Yes      |       1 |

| hebrew_bin            | hebrew   |  71 |         | Yes      |       1 |

| tis620_thai_ci        | tis620   |  18 | Yes     | Yes      |       4 |

| tis620_bin            | tis620   |  89 |         | Yes      |       1 |

| euckr_korean_ci       | euckr    |  19 | Yes     | Yes      |       1 |

| euckr_bin             | euckr    |  85 |         | Yes      |       1 |

| koi8u_general_ci      | koi8u    |  22 | Yes     | Yes      |       1 |

| koi8u_bin             | koi8u    |  75 |         | Yes      |       1 |

| gb2312_chinese_ci     | gb2312   |  24 | Yes     | Yes      |       1 |

| gb2312_bin            | gb2312   |  86 |         | Yes      |       1 |

| greek_general_ci      | greek    |  25 | Yes     | Yes      |       1 |

| greek_bin             | greek    |  70 |         | Yes      |       1 |

| cp1250_general_ci     | cp1250   |  26 | Yes     | Yes      |       1 |

| cp1250_czech_cs       | cp1250   |  34 |         | Yes      |       2 |

| cp1250_croatian_ci    | cp1250   |  44 |         | Yes      |       1 |

| cp1250_bin            | cp1250   |  66 |         | Yes      |       1 |

| cp1250_polish_ci      | cp1250   |  99 |         | Yes      |       1 |

| gbk_chinese_ci        | gbk      |  28 | Yes     | Yes      |       1 |

| gbk_bin               | gbk      |  87 |         | Yes      |       1 |

| latin5_turkish_ci     | latin5   |  30 | Yes     | Yes      |       1 |

| latin5_bin            | latin5   |  78 |         | Yes      |       1 |

| armscii8_general_ci   | armscii8 |  32 | Yes     | Yes      |       1 |

| armscii8_bin          | armscii8 |  64 |         | Yes      |       1 |

| utf8_general_ci       | utf8     |  33 | Yes     | Yes      |       1 |

| utf8_bin              | utf8     |  83 |         | Yes      |       1 |

| utf8_unicode_ci       | utf8     | 192 |         | Yes      |       8 |

| utf8_icelandic_ci     | utf8     | 193 |         | Yes      |       8 |

| utf8_latvian_ci       | utf8     | 194 |         | Yes      |       8 |

| utf8_romanian_ci      | utf8     | 195 |         | Yes      |       8 |

| utf8_slovenian_ci     | utf8     | 196 |         | Yes      |       8 |

| utf8_polish_ci        | utf8     | 197 |         | Yes      |       8 |

| utf8_estonian_ci      | utf8     | 198 |         | Yes      |       8 |

| utf8_spanish_ci       | utf8     | 199 |         | Yes      |       8 |

| utf8_swedish_ci       | utf8     | 200 |         | Yes      |       8 |

| utf8_turkish_ci       | utf8     | 201 |         | Yes      |       8 |

| utf8_czech_ci         | utf8     | 202 |         | Yes      |       8 |

| utf8_danish_ci        | utf8     | 203 |         | Yes      |       8 |

| utf8_lithuanian_ci    | utf8     | 204 |         | Yes      |       8 |

| utf8_slovak_ci        | utf8     | 205 |         | Yes      |       8 |

| utf8_spanish2_ci      | utf8     | 206 |         | Yes      |       8 |

| utf8_roman_ci         | utf8     | 207 |         | Yes      |       8 |

| utf8_persian_ci       | utf8     | 208 |         | Yes      |       8 |

| utf8_esperanto_ci     | utf8     | 209 |         | Yes      |       8 |

| utf8_hungarian_ci     | utf8     | 210 |         | Yes      |       8 |

| utf8_sinhala_ci       | utf8     | 211 |         | Yes      |       8 |

| ucs2_general_ci       | ucs2     |  35 | Yes     | Yes      |       1 |

| ucs2_bin              | ucs2     |  90 |         | Yes      |       1 |

| ucs2_unicode_ci       | ucs2     | 128 |         | Yes      |       8 |

| ucs2_icelandic_ci     | ucs2     | 129 |         | Yes      |       8 |

| ucs2_latvian_ci       | ucs2     | 130 |         | Yes      |       8 |

| ucs2_romanian_ci      | ucs2     | 131 |         | Yes      |       8 |

| ucs2_slovenian_ci     | ucs2     | 132 |         | Yes      |       8 |

| ucs2_polish_ci        | ucs2     | 133 |         | Yes      |       8 |

| ucs2_estonian_ci      | ucs2     | 134 |         | Yes      |       8 |

| ucs2_spanish_ci       | ucs2     | 135 |         | Yes      |       8 |

| ucs2_swedish_ci       | ucs2     | 136 |         | Yes      |       8 |

| ucs2_turkish_ci       | ucs2     | 137 |         | Yes      |       8 |

| ucs2_czech_ci         | ucs2     | 138 |         | Yes      |       8 |

| ucs2_danish_ci        | ucs2     | 139 |         | Yes      |       8 |

| ucs2_lithuanian_ci    | ucs2     | 140 |         | Yes      |       8 |

| ucs2_slovak_ci        | ucs2     | 141 |         | Yes      |       8 |

| ucs2_spanish2_ci      | ucs2     | 142 |         | Yes      |       8 |

| ucs2_roman_ci         | ucs2     | 143 |         | Yes      |       8 |

| ucs2_persian_ci       | ucs2     | 144 |         | Yes      |       8 |

| ucs2_esperanto_ci     | ucs2     | 145 |         | Yes      |       8 |

| ucs2_hungarian_ci     | ucs2     | 146 |         | Yes      |       8 |

| ucs2_sinhala_ci       | ucs2     | 147 |         | Yes      |       8 |

| cp866_general_ci      | cp866    |  36 | Yes     | Yes      |       1 |

| cp866_bin             | cp866    |  68 |         | Yes      |       1 |

| keybcs2_general_ci    | keybcs2  |  37 | Yes     | Yes      |       1 |

| keybcs2_bin           | keybcs2  |  73 |         | Yes      |       1 |

| macce_general_ci      | macce    |  38 | Yes     | Yes      |       1 |

| macce_bin             | macce    |  43 |         | Yes      |       1 |

| macroman_general_ci   | macroman |  39 | Yes     | Yes      |       1 |

| macroman_bin          | macroman |  53 |         | Yes      |       1 |

| cp852_general_ci      | cp852    |  40 | Yes     | Yes      |       1 |

| cp852_bin             | cp852    |  81 |         | Yes      |       1 |

| latin7_estonian_cs    | latin7   |  20 |         | Yes      |       1 |

| latin7_general_ci     | latin7   |  41 | Yes     | Yes      |       1 |

| latin7_general_cs     | latin7   |  42 |         | Yes      |       1 |

| latin7_bin            | latin7   |  79 |         | Yes      |       1 |

| utf8mb4_general_ci    | utf8mb4  |  45 | Yes     | Yes      |       1 |

| utf8mb4_bin           | utf8mb4  |  46 |         | Yes      |       1 |

| utf8mb4_unicode_ci    | utf8mb4  | 224 |         | Yes      |       8 |

| utf8mb4_icelandic_ci  | utf8mb4  | 225 |         | Yes      |       8 |

| utf8mb4_latvian_ci    | utf8mb4  | 226 |         | Yes      |       8 |

| utf8mb4_romanian_ci   | utf8mb4  | 227 |         | Yes      |       8 |

| utf8mb4_slovenian_ci  | utf8mb4  | 228 |         | Yes      |       8 |

| utf8mb4_polish_ci     | utf8mb4  | 229 |         | Yes      |       8 |

| utf8mb4_estonian_ci   | utf8mb4  | 230 |         | Yes      |       8 |

| utf8mb4_spanish_ci    | utf8mb4  | 231 |         | Yes      |       8 |

| utf8mb4_swedish_ci    | utf8mb4  | 232 |         | Yes      |       8 |

| utf8mb4_turkish_ci    | utf8mb4  | 233 |         | Yes      |       8 |

| utf8mb4_czech_ci      | utf8mb4  | 234 |         | Yes      |       8 |

| utf8mb4_danish_ci     | utf8mb4  | 235 |         | Yes      |       8 |

| utf8mb4_lithuanian_ci | utf8mb4  | 236 |         | Yes      |       8 |

| utf8mb4_slovak_ci     | utf8mb4  | 237 |         | Yes      |       8 |

| utf8mb4_spanish2_ci   | utf8mb4  | 238 |         | Yes      |       8 |

| utf8mb4_roman_ci      | utf8mb4  | 239 |         | Yes      |       8 |

| utf8mb4_persian_ci    | utf8mb4  | 240 |         | Yes      |       8 |

| utf8mb4_esperanto_ci  | utf8mb4  | 241 |         | Yes      |       8 |

| utf8mb4_hungarian_ci  | utf8mb4  | 242 |         | Yes      |       8 |

| utf8mb4_sinhala_ci    | utf8mb4  | 243 |         | Yes      |       8 |

| cp1251_bulgarian_ci   | cp1251   |  14 |         | Yes      |       1 |

| cp1251_ukrainian_ci   | cp1251   |  23 |         | Yes      |       1 |

| cp1251_bin            | cp1251   |  50 |         | Yes      |       1 |

| cp1251_general_ci     | cp1251   |  51 | Yes     | Yes      |       1 |

| cp1251_general_cs     | cp1251   |  52 |         | Yes      |       1 |

| utf16_general_ci      | utf16    |  54 | Yes     | Yes      |       1 |

| utf16_bin             | utf16    |  55 |         | Yes      |       1 |

| utf16_unicode_ci      | utf16    | 101 |         | Yes      |       8 |

| utf16_icelandic_ci    | utf16    | 102 |         | Yes      |       8 |

| utf16_latvian_ci      | utf16    | 103 |         | Yes      |       8 |

| utf16_romanian_ci     | utf16    | 104 |         | Yes      |       8 |

| utf16_slovenian_ci    | utf16    | 105 |         | Yes      |       8 |

| utf16_polish_ci       | utf16    | 106 |         | Yes      |       8 |

| utf16_estonian_ci     | utf16    | 107 |         | Yes      |       8 |

| utf16_spanish_ci      | utf16    | 108 |         | Yes      |       8 |

| utf16_swedish_ci      | utf16    | 109 |         | Yes      |       8 |

| utf16_turkish_ci      | utf16    | 110 |         | Yes      |       8 |

| utf16_czech_ci        | utf16    | 111 |         | Yes      |       8 |

| utf16_danish_ci       | utf16    | 112 |         | Yes      |       8 |

| utf16_lithuanian_ci   | utf16    | 113 |         | Yes      |       8 |

| utf16_slovak_ci       | utf16    | 114 |         | Yes      |       8 |

| utf16_spanish2_ci     | utf16    | 115 |         | Yes      |       8 |

| utf16_roman_ci        | utf16    | 116 |         | Yes      |       8 |

| utf16_persian_ci      | utf16    | 117 |         | Yes      |       8 |

| utf16_esperanto_ci    | utf16    | 118 |         | Yes      |       8 |

| utf16_hungarian_ci    | utf16    | 119 |         | Yes      |       8 |

| utf16_sinhala_ci      | utf16    | 120 |         | Yes      |       8 |

| cp1256_general_ci     | cp1256   |  57 | Yes     | Yes      |       1 |

| cp1256_bin            | cp1256   |  67 |         | Yes      |       1 |

| cp1257_lithuanian_ci  | cp1257   |  29 |         | Yes      |       1 |

| cp1257_bin            | cp1257   |  58 |         | Yes      |       1 |

| cp1257_general_ci     | cp1257   |  59 | Yes     | Yes      |       1 |

| utf32_general_ci      | utf32    |  60 | Yes     | Yes      |       1 |

| utf32_bin             | utf32    |  61 |         | Yes      |       1 |

| utf32_unicode_ci      | utf32    | 160 |         | Yes      |       8 |

| utf32_icelandic_ci    | utf32    | 161 |         | Yes      |       8 |

| utf32_latvian_ci      | utf32    | 162 |         | Yes      |       8 |

| utf32_romanian_ci     | utf32    | 163 |         | Yes      |       8 |

| utf32_slovenian_ci    | utf32    | 164 |         | Yes      |       8 |

| utf32_polish_ci       | utf32    | 165 |         | Yes      |       8 |

| utf32_estonian_ci     | utf32    | 166 |         | Yes      |       8 |

| utf32_spanish_ci      | utf32    | 167 |         | Yes      |       8 |

| utf32_swedish_ci      | utf32    | 168 |         | Yes      |       8 |

| utf32_turkish_ci      | utf32    | 169 |         | Yes      |       8 |

| utf32_czech_ci        | utf32    | 170 |         | Yes      |       8 |

| utf32_danish_ci       | utf32    | 171 |         | Yes      |       8 |

| utf32_lithuanian_ci   | utf32    | 172 |         | Yes      |       8 |

| utf32_slovak_ci       | utf32    | 173 |         | Yes      |       8 |

| utf32_spanish2_ci     | utf32    | 174 |         | Yes      |       8 |

| utf32_roman_ci        | utf32    | 175 |         | Yes      |       8 |

| utf32_persian_ci      | utf32    | 176 |         | Yes      |       8 |

| utf32_esperanto_ci    | utf32    | 177 |         | Yes      |       8 |

| utf32_hungarian_ci    | utf32    | 178 |         | Yes      |       8 |

| utf32_sinhala_ci      | utf32    | 179 |         | Yes      |       8 |

| binary                | binary   |  63 | Yes     | Yes      |       1 |

| geostd8_general_ci    | geostd8  |  92 | Yes     | Yes      |       1 |

| geostd8_bin           | geostd8  |  93 |         | Yes      |       1 |

| cp932_japanese_ci     | cp932    |  95 | Yes     | Yes      |       1 |

| cp932_bin             | cp932    |  96 |         | Yes      |       1 |

| eucjpms_japanese_ci   | eucjpms  |  97 | Yes     | Yes      |       1 |

| eucjpms_bin           | eucjpms  |  98 |         | Yes      |       1 |

+-----------------------+----------+-----+---------+----------+---------+

195 rows in set (0.00 sec)

 

mysql>

 

 

 

 

创建表的时候指定字符集和校队规则

 

mysql> create table demo2 (name varchar(30) character set utf8 collate utf8_bin

name2 varchar(30) character set utf8 collate utf8_general_ci);

Query OK, 0 rows affected (0.06 sec)

 

mysql> show create table demo2;

+-------+----------------------------------

-------------------------------------------

-------------------------------------+

| Table | Create Table

 

                                     |

+-------+----------------------------------

-------------------------------------------

-------------------------------------+

| demo2 | CREATE TABLE `demo2` (

  `name` varchar(30) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,

  `name2` varchar(30) CHARACTER SET utf8 DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=latin1 |

+-------+----------------------------------

-------------------------------------------

-------------------------------------+

1 row in set (0.00 sec)

 

 

 

插入数据和查询对应的数据查看区分大小写的规则

mysql> insert into demo2(name,name2) values('a','a'),('b','b'),('A','A');

Query OK, 3 rows affected (0.05 sec)

Records: 3  Duplicates: 0  Warnings: 0

 

mysql> SELECT * FROM DEMO2;

+------+-------+

| name | name2 |

+------+-------+

| a    | a     |

| b    | b     |

| A    | A     |

+------+-------+

3 rows in set (0.00 sec)

 

mysql> select * from demo2 where name2='a';

+------+-------+

| name | name2 |

+------+-------+

| a    | a     |

| A    | A     |

+------+-------+

2 rows in set (0.00 sec)

 

mysql> select * from demo2 where name='a';

+------+-------+

| name | name2 |

+------+-------+

| a    | a     |

+------+-------+

1 row in set (0.00 sec)

 

 

以上的两个字段其中在查询的过程中区分大小写和不区分大小写的区别。