MySQL 命令行 中文乱码
遇到一个问题是在MySQL命令行插入中文数据或者查询中文数据时出现乱码,或者显示不对。
在命令行输入:show variables like ‘character_set_%’;
查看当前配置的编码;
在命令行输入 :set names utf8;
则等同于
set character_set_client=utf8;
set character_set_results=utf8;
set character_set_connection=utf8;
这三条命令
在命令行插入数据之前
执行命令set names gbk;或者set names gb2312;
再插入
查询数据之前
执行命令set names gbk;或者set names gb2312;
完了之后再set names utf8;
这样就能正常插入和查询中文并且保持数据库编码为utf8
相关文档:
select
count(*) as mcount ,
left(create_time,10) as ptime ,
count(if(receive_msg is null,id,null)) as nullcount ,
count(if(receive_msg = '1',receive_msg,null)) as apfcount ,
count(if(receive_msg = '2',receive_msg,null)) as dttcount ,
count(if(receive_msg = '3',receive_ms ......
INET_ATON(expr)
给出一个作为字符串的网络地址的点地址表示,返回一个代表该地址数值的整数。地址可以是4或8比特地址。
mysql> SELECT INET_ATON('209.207.224.40');
+-----------------------------+
| INET_ATON('209.207.224.40') |
+-----------------------------+
| 3520061480 |
+-------------------- ......
关于MySQL表设计应该注意的问题
转自 http://blog.chinaunix.net/u/29134/showart_1316574.html
1、慎重选择表名。
有两种选择:
按照多数开发语言的命名规则。比如(myCustomer)。
按照多数开源思想命名规则。比如(my_customer)。
按照咱们中国人的思想。比如(我的客户)。
第一种有个缺点,很容易忘掉大写的字 ......
MySQL查询表内重复记录
查询及删除重复记录的方法
(一)
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select * from people
where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)
2、删除表中多余的重复记录,重复记录是根据单个字段 ......