mySQL的中文字符处理
1.首先,设置数据库支持中文gb2312/gbk。
具体方法:
打开mySQL文件夹,修改my.ini配置文件。
[client]
port=3306
default-character-set=gb2312
以及
[mysqld]下的
default-character-set=gb2312
修改,保存,重启。若设为System服务,可以在控制面板-管理工具-服务中找到mySQL服务,重启。
2.保证Web项目所在容器支持中文,个人认为是将Tomcat改为支持gb2312.
打开文件夹,找到server.xml修改
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
reloadable="true" redirectPort="8443" reloadable="true" URIEncoding="gb2312" />
rereloadable="true"设置热启动,URIEncoding="gb2312"设置字符
3.前台页面
<%@ page language="java" pageEncoding="gb2312"%>
4.添加过滤器
本人将前三种都修改,重新启动,数据库的插入依然显示???,之后使用Filter类成功。
据称过滤类比较稳定,推荐使用。
具体过程,网上找的方法
package com.strutsLogin.util; import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
/**
* 中文过滤器
*/
public class SetCharacterEncodingFilter implements Filter {
protected String encoding = null;
protected FilterConfig filterConfig = null;
protected boolean ignore = true;
public void destroy() {
this.encoding = null;
this.filterConfig = null;
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
if (ignore || (request.getCharacterEncoding() == null)) {
String encoding = selectEncoding(request);
if (encoding != null)
request.setCharacterEncoding(encoding);
}
// Pass control on to the next filter
chain.doFilter(request, response);
}
public void init(Fi
相关文档:
MySQL count(*) 与 count(col) 查询效率比较
优化总结:
1.任何情况下SELECT COUNT(*) from xxx 是最优选择;
2.尽量减少SELECT
COUNT(*) from xxx WHERE COL = ‘xxx’ 这种查询;
3.杜绝SELECT COUNT(COL) from tablename WHERE COL = ‘xxx’
的出现。(其中COL非主键)
环境:
MySQL版本: ......
一. 设置步骤:1、右键点击我的电脑,选择属性(见图-1)
1、点击高级,在对话框的下部点击环境变量
3、在系统变量对话框中,点击新建进行设置.
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.6.0_05(在此使用的是默认安装路径)
系统变量->编辑->变 ......
如果忘记mysql的密码,可以用以下的方式进行修改:
我用的mysql是5.1的server
在windows下:
打开命令行窗口,停止mysql服务:Net stop mysql
到mysql的安装路径启动mysql,在bin目录下使用mysqld.exe启动,在命令行窗口执行:mysqld --skip-grant-tables
然后另外打开一个命入令行窗口,执行mysql,此时无需输入密码 ......
MySQL 5.0 以上支持存储过程。
PHP 5.0 以上的 mysqli 系列函数可以支持操作 MySQL 的存储过程。
以下是一些简单的存储过程和用 PHP 调用的示例。 一、返回单个数据: 1: <?php
2: header("Content-Type:t ......
1 MYSQL中的字符集概念
Mysql的字符集里有两个概念,一个是"Character set(字符集)",另一个是"Collations"。
1.1 Collations
Collations翻成中文是"校验",在网页开发的过程中,这个词汇,只在Mysql里使用,主要作用是指导Mysql对字符的比较,比如, ASCII字符集里,Col ......