zoukankan      html  css  js  c++  java
  • mysql字符集问题汇总

    1.设置mysql字符集:
    在my.ini中添加以下设置,没有my.ini可以将my_default.ini改成他。
    character-set-server=utf8
    [client]
    loose-default-character-set = utf8

    2.jdbc连接字符串指定
    在jsp中,mysql使用中文查询条件无输出的解决办法,连接字符串后面指定utf_8字符集

    3.建立数据库脚本文件最好也加上字符集设置
    CREATE TABLE `t_export` (
    `id` int(11) NOT NULL auto_increment,
    `goodsId` int(20) default NULL,
    `expoPrice` varchar(20) default NULL,
    `expoDate` datetime default NULL,
    `expoNum` varchar(20) default NULL,
    `expoDesc` varchar(1000) default NULL,
    PRIMARY KEY (`id`),
    KEY `FK_t_export` (`goodsId`),
    CONSTRAINT `FK_t_export` FOREIGN KEY (`goodsId`) REFERENCES `t_goods` (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;

    4.jsp页面中指定utf-8
    <%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>

    5.客户端访问的问题  
    但这三个参数是不能写在配置文件my.cnf里的。只能通过set命令来动态修改。我们需要的是在配置文件里写好一劳
    永逸的办法。那么这时候,是否有在服务端解决问题的办法呢,可行的思路是在init_connect里设置。这个命令在每
    个普通用户连接上来的时候都会触发执行,可以在[mysqld]部分增加以下一行设置连接字符集:
    在[mysqld]下添加:
      init_connect = 'SET NAMES utf8'

    6首先,MySQL有默认的字符集,这个是安装的时候确定的,在编译MySQL的时候可以通过DEFAULT_CHARSET=
    utf8和DEFAULT_COLLATION=utf8_general_ci这两个参数(MySQL5.5版本,5.1版本用--with-charset=
    utf8 --with-collation=utf8_general_ci)来指定默认的字符集为utf8,这也是最一劳永逸的办法,这样指定后,
    客户端连接到数据库的编码方式也默认是utf8了,应用程序不需要任何处理。

  • 相关阅读:
    <C++ QT4 GUI 编程>第一章笔记
    生成snmp++动态库
    PHP 5.3 新特性
    编译安装-Subversion 1.8.5
    Xen入门系列四【Xen 管理实操】
    Xen入门系列三【Xen 管理工具 xm】
    COMET探索系列三【异步通知服务器关闭数据连接实现思路】
    PHP生成二维码【谷歌API+qrcode+圆角Logo】
    SSH免密码登陆详解
    COMET探索系列二【Ajax轮询复用模型】
  • 原文地址:https://www.cnblogs.com/yc-shen/p/7804409.html
Copyright © 2011-2022 走看看