zoukankan      html  css  js  c++  java
  • MYSQL: set names utf8是什么意思?

    set names utf8 是用于设置编码,可以再在建数据库的时候设置,也可以在创建表的时候设置,或只是对部分字段进行设置,而且在设置编码的时候,这些地方最好是一致的,这样能最大程度上避免数据记录出现乱码。

    执行SET NAMES utf8的效果等同于同时设定如下:
    SET character_set_client='utf8';
    SET character_set_connection='utf8';
    SET character_set_results='utf8';

    另外,如果数据出现乱码可以试着用以下办法解决:
    一、避免创建数据库及表出现中文乱码和查看编码方法
    1、创建数据库的时候:CREATE DATABASE `test`
    CHARACTER SET 'utf8'
    COLLATE 'utf8_general_ci';
    2、建表的时候 CREATE TABLE `database_user` (
    `ID` varchar(40) NOT NULL default '',
    `UserID` varchar(40) NOT NULL default '',
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

    这3个设置好了,基本就不会出问题了,即建库和建表时都使用相同的编码格式。
    如果是已经建了库和表可以通过以下方式进行查询。
    1.查看默认的编码格式:
    mysql> show variables like "%char%";
    +--------------------------+---------------+
    | Variable_name | Value |
    +--------------------------+---------------+
    | character_set_client | gbk |
    | character_set_connection | gbk |
    | character_set_database | utf8 |
    | character_set_filesystem | binary |
    | character_set_results | gbk |
    | character_set_server | utf8 |
    | character_set_system | utf8 |
    +--------------------------+-------------+

  • 相关阅读:
    linux扩展分区
    linux开机出现initramfs无法进入系统
    openCV编译安装-MSCV-Windows10-Qt
    Qt一键部署配置(Qt程序打包)
    Part8 升序排序 和降序排序
    Part7-.简单查询1
    Part6-向表中插入数据
    Part5-修改表(添加字段、删除字段、查看删除是否成功)
    Part4-删除表
    Part3-复制表
  • 原文地址:https://www.cnblogs.com/skyblue123/p/13263640.html
Copyright © 2011-2022 走看看