易截截图软件、单文件、免安装、纯绿色、仅160KB

Mysql中文乱码问题的小结

概述:
1.乱码问题归根到底是字符集的问题,那就从字符集设置方面考虑,不外乎下面几方面:
  server(Mysql服务器),client,database(数据库),connection(连接),result
  MySQL的字符集处理是这样的:
 (1)发送请求
      客户端(character_set_client)=》数据库连接(character_set_connection)=》存储数据库(table,column)
 (2)返回请求
      存储数据库(table,column)=》数据库连接(character_set_connection )=》客户端(character_set_results)在每一个非初始节点,都会做一次从上一个结点到当前节点的字符集转换操作。
2.MySQL中默认字符集的设置有四级:服务器级,数据库级,表级,字段级
设置步骤:
1.修改Mysql服务器的默认字符编码(Mysql安装目录下的my.ini文件)
  CLIENT SECTION中设置default-character-set=utf8
  SERVER SECTION中设置default-character-set=utf8
  在Mysql命令行输入\s,查看Mysql服务器信息,其中有:
  Server characterset:utf8
  Db     characterset:utf8
  Client characterset:utf8
  Conn.  characterset:utf8
  设置成功。
2.新建数据库、表、字段都会使用默认编码
3.页面编码采用与数据库相同编码(utf-8)
  这样就不会出现乱码的情况了。
4.如果数据库编码和页面编码不一致时,那么在连接数据库时要指定与页面一致的编码方式,有两种方式:
  mysql_set_charset(string charset,[link_identifier]):首选方式
  mysql_query("SET NAMES 'charset'"):不推荐使用
  mysql_set_charset() 比 mysql_query("SET NAMES 'XXX'")多了一个设置,就是把struct MySQL的charset成员也设置了。这个成员变量在escape的时候起着很重要的作用,特别是对于GBK这种运行把“”作为字符一部分的编码格式。如果你只使用mysql_query(”set names XXX”),那么在某些字符集,会有重大的安全漏洞,导致mysql_real_escape_string变得和addslashes一样不安全。
5.另外要注意的是页面文件编码方式与页面头部的meta信息中的charset一定要保持一致,这是最基本的设置。


相关文档:

关于mysql 的order by rand()

 官方手册上是这么写的:
<!--
/* Font Definitions */
@font-face
{font-family:宋体;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{f ......

asp.net连接mysql的问题

一:asp.net怎么连接mysql数据库
   下载mysql connection的东西
   http://dev.mysql.com/downloads/connector/net/6.2.html
   有3个download选第一个下载
   Windows (x86, 32-bit), ZIP Archive 
   mysql-connector-net-6.2.2-noinstall.zip ......

php学习笔记(12):PHP+MYSQL留言板(下

1、提交表单Javascript验证
<form action="" method="post" name="myform" onsubmit="return CheckPost();">
SCRIPT language=javascript>
function CheckPost()
{
 
if (myform.user.value=="")
 {
  alert("请填写用户");
  myform.user.focus();
  return f ......

Java 把文本中的数据插入到MySql数据库

一共有三个类:WriteFile ; ReadFile ; InsertDB ;
//WriteFile.java
//用于将信息写入文本文件
package org.mb.insertfromfile;
import java.io.*;
public class WriteFile{
private int count = 0 ;
public int getCount() {
return count;
}
public void setCount(int count) {
this.cou ......

Linux 编译安装 MYSQL 5.1 与 Innodb

Linux 编译安装 MYSQL 5.1 与 Innodb
编译mysql5
代码:
./configure \
--prefix=/usr/local/mysql \
--localstatedir=/usr/local/mysql/data \
--with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock \
--with-extra-charsets=all \
--with-charset=utf8 \
- ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号