mysql编码问题
首先设置mysql的编码为utf8
在linux下修改3个my.cnf的1个/etc/mysql
/my.cnf文件
找到客户端配置[client] 在下面添加
default-character-set=utf8 默认字符集为utf8
在找到[mysqld] 添加
default-character-set=utf8 默认字符集为utf8
init_connect='SET NAMES utf8' (设定连接mysql
数据库时使用utf8编码,以让mysql
数据库为utf8运行)
查看mysql编码
都设置为utf8后,从文件导数据导数据表中,文件中文正常,编码也是utf8,发现在mysql查询时,中文都成乱码,
load data infile 'result1.txt' into table test character set 'utf8' fields escaped by '"' terminated by ','
optionally enclosed by '"' lines terminated by '\n' (flag,words,tappend,content); 导入数据时也指定utf8编码,中文成乱码很有可能时建表的时候表的编码不是utf8,此时可以重新删除表后重新建表,建表是指定编码
create table mytest (name varchar(20) not null default '') default charset utf8;
相关文档:
本文主要介绍mysql数据库下show命令的主要用法:
a. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称。
b. show databases; -- 显示mysql中所有数据库的名称。
c. show columns from table_name from database_name; 或show columns from database_name.table_n ......
MySQL MyIsam 存储引擎在创建索引的时候,索引键长度是有一个较为严格的长度限制的,所有索引键最大长度总和不能超过1000,而且不是实际数据长度的总和,而是索引键字段定义长度的总和。下面做个简单的测试,记录一下。
root@sky:~# mysql -u sky -p -h127.0.0.1
Enter password:
Welcome to the MySQL monitor. Command ......
共3个文件
IncDB.php数据库连接
index.php首页
InsetToDB.php数据库操作
数据库lguestbook里面建表
CREATE TABLE `intd` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) character set utf8 collate utf8_bin N ......
这就要从双引号和单引号的作用讲起:
双引号里面的字段会经过编译器解释然后再当作HTML代码输出,但是单引号里面的不需要解释,直接输出。例如:
$abc='I love u';
echo $abc //结果是:I love u
echo '$abc' //结果是:$abc
echo "$abc" //结果是:I love u
所以在对数据库里面的SQL语句赋值的时候也要用在双引号 ......