一、字符集设定

MySQL数据库允许对服务器、数据库、数据表、数据列级别的字符集作出互不影响的设定。

1、对服务器字符集设定是通过配置文件中选项character-set-server 设置,如 character-set-server =utf8

2、如果想在创建数据库时为它设定一个默认的字符集和排序规则,可以使用如下的形式:

  如 CREATE DATABASE 数据库名  CHARACTER SET utf8  [COLLATE utf8_general_ci]

  如果在创建数据库时没有指定字符集,那么服务器级别的字符集和排序规则设置将传递给这个数据库。

3、如果想为某个数据表设定默认的字符集和排序规则,可以在创建数据表时利用CHARACTER SET和COLLATE数据表选项:

  如 CREATE TABLE 数据表名  CHARACTER SET utf8 [COLLATE utf8_general_ci]

  如果在创建数据表时没有指定字符集和排序规则,那么数据库级别的默认设置将传递给这个数据表。

4、如果想为数据表里的某个数据列,指定一个默认的字符集和排序规则

  如 数据列名  CHAR(10) CHARACTER SET utf8 [COLLATE utf8_general_ci]

  如果指定数据列时没有指定字符集和排序规则,那么数据表的默认设置将传递给这个数据列。

  CHARACTER SET 和COLLATE属性适用于CHAR、VARCHAR、TEXT、ENUM和SET数据类型。

二、查询数据库支持的字符集和查询当前数据库字符集设置

1、查询数据库支持的字符集和排序规则

  SHOW CHARACTER SET ; 或 SHOW CHARSET;       ——查询数据库支持的字符集

  

  SHOW COLLATION;  ——查询数据库支持的排序规则

  

2、查看数据库当前使用的字符集和排序规则,可以使用SHOW VARIABLES语句:

  

  

备注:MySQL把数据库的字符集和排序规则属性保存在数据库数据文件下的db.opt文件里。

  

MySQL字符集设定与查询的更多相关文章

  1. MySQL字符集不一致导致查询SQL性能问题

    今天做了一个MySQL数据库中的SQL优化. 结论是关联字段字符集不同,导致索引不可用. 查询的SQL如下: select `Alias`.`Grade`, `Alias`.`id`, `Alias` ...

  2. 从一个慢查询到MySQL字符集编码

    从一个慢查询到MySQL字符集编码 目录 从一个慢查询到MySQL字符集编码 1. 问题起源 2. MySQL字符集和字符集排序规则 2.1 字符集相关概念 2.2 MySQL中的字符集和字符集排序规 ...

  3. Mysql字符集设置

    转 基本概念 • 字符(Character)是指人类语言中最小的表义符号.例如’A'.’B'等:• 给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这一数值就是字符的编码(Encodi ...

  4. 字符集与Mysql字符集处理(二)

    接着上篇文章继续讲字符集的故事.这一篇文章主要讲MYSQL的各个字符集设置,关于基础理论部分,参考于这里.   1. MYSQL的系统变量 – character_set_server:默认的内部操作 ...

  5. Mysql字符集设置 2 图

    基本概念 • 字符(Character)是指人类语言中最小的表义符号.例如'A'.'B'等: • 给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这一数值就是字符的编码(Encodin ...

  6. 查看mysql字符集及修改表结构--表字符集,字段字符集

    MySQL 乱码的根源是的 MySQL 字符集设置不当的问题,本文汇总了有关查看 MySQL 字符集的命令.包括查看 MySQL 数据库服务器字符集.查看 MySQL 数据库字符集,以及数据表和字段的 ...

  7. MySQL字符集编码

    MySQL字符集编码总结 之前内部博客上凯哥分享了一篇关于mysql字符集的文章,之前我对mysql字符集一块基本没有深究过,看到凯哥文章后有些地方有点疑惑,遂自己去看了mysql的官方文档,并參考了 ...

  8. mysql 字符集配置

    查看和设置MySQL数据库字符集作者:scorpio 2008-01-21 10:05:17 标签: 杂谈 Liunx下修改MySQL字符集:1.查找MySQL的cnf文件的位置find / -ina ...

  9. MySQL字符集设置—MySQL数据库乱码问题

    MySQL(4.1以后版本) 服务器中有六个关键位置使用了字符集的概念,他们是:client .connection.database.results.server .system.MySQL有两个字 ...

随机推荐

  1. bzoj 2120: 数颜色【带修改莫队】

    比较裸的带修莫队,对每个修改操作记一下它修改的位置修改前的颜色 然后正常莫队,每次对修改操作时间倒流一下即可 #include<iostream> #include<cstdio&g ...

  2. 优化 SQL 查询:如何写出高性能SQL语句

    1. 首先要搞明白什么叫执行计划? 执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个 10万条记录的表中查1条 ...

  3. nginx缓存过期

    1 原理 在默认下,请求过的内容会接受304,而从本地缓存调用.这是通过client向server发送请求,给出ETag,server确认ETag未变,则不返回内容,client调用本地缓存. 而ex ...

  4. [转]Adaboost 算法的原理与推导

    看了很多篇解释关于Adaboost的博文,觉得这篇写得很好,因此转载来自己的博客中,以便学习和查阅. 原文地址:<Adaboost 算法的原理与推导>,主要内容可分为三块,Adaboost ...

  5. Selenium中验证码处理

    验证码的主要实现方法 1.读取方式:在服务器目录下保存制作好的图片文件.然后在web页面上让用户识别,这种方式完全可以通过URL来破解图片的地址,通过图片地址可以间接的知道图片表示的验证码是什么所以这 ...

  6. 150 Evaluate Reverse Polish Notation 逆波兰表达式求值

    求在 逆波兰表示法 中算术表达式的值.有效的运算符号包括 +, -, *, / .每个运算对象可以是整数,也可以是另一个逆波兰计数表达.例如:  ["2", "1&quo ...

  7. 将php数组传递到js—json_encode(),json_decode()

    json_decode(),对一个json字符串进行解码,json_encode()是生成一个json字符串 上面的解释很清楚了,关于php里数组赋值的问题,列举如下: <?php //对象 c ...

  8. SpringBoot 2.x (5):异常处理与部署WAR项目

    异常处理: SpringBoot的异常处理是不友好的,前端只会显示最基本的错误名称 后端控制台会报出具体的错误,那么我们如何告知前端具体的错误信息呢? 1:对全局异常进行处理 一个测试的Control ...

  9. canvas防画图工具

    <style> body {   background: black;   text-align: center; } #cans {   background: white; } < ...

  10. Android小玩意儿-- 从头开发一个正经的MusicPlayer(二)

    1·在Service中实例化MusicPlayer,实现对整个播放过程的控制 上一次做到了找到音乐数据,并封装成对象装在ArrayList里,把数据的信息显示在UI上.下面一个阶段就要开始真正的音乐播 ...