你虚拟主机上cz_dq字段是int型吧?
解决方案 »
- socket和port参数区别?
- mysql中,这样的语句怎么写? 即如果某表中没有字段ID(主键)的值为10的记录,则插入一条ID值为10的记录,否则什么都不做? 怎么写语句?
- 快速查询
- 'FEDERATED'启动不起来?
- 请wwwwa关注一下
- 数据库服务器比较多,如何管理?
- mysql update set 中文
- 请教一个Mysql 的统计各个月份的总数的语句
- 求不用主子查询来优化出 行转列的数据...
- 我有100万条企业名称,如果用 like %企业名称% 来查询不走索引特别慢,集群的效果也不明显,大佬们有什么好办法吗?
- 复杂的近似度计算应用(sql 算法相关)
- 查出上传时间最晚的 记录 并按用户分组
MySQL 中文显示乱码
character_set_client utf8
character_set_connection utf8
character_set_database latin1
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir E:\Program Files\MySQL\MySQL Server 5.0\share\charsets\
这是当前联接系统参数
下面是数据库表中字段的字符集设置
Table Create Table
house_cz CREATE TABLE `house_cz` (
`id` int(10) unsigned NOT NULL auto_increment,
`cz_dq` int(3) NOT NULL,
`cz_addr` char(40) NOT NULL,
`cz_type` int(3) NOT NULL,
`cz_new` tinyint(2) NOT NULL,
`cz_subtype` char(20) NOT NULL,
`cz_hx` char(20) NOT NULL,
`cz_hx1` char(6) NOT NULL,
`cz_hx2` char(6) NOT NULL,
`cz_areas` float NOT NULL,
`cz_price` float NOT NULL,
`cz_pricetype` char(20) NOT NULL,
`cz_pay` char(8) NOT NULL,
`cz_sumfloor` tinyint(2) NOT NULL,
`cz_dofloor` tinyint(2) NOT NULL,
`cz_pointto` char(8) NOT NULL,
`cz_intime` int(4) NOT NULL,
`cz_jcss` char(40) NOT NULL,
`cz_sbqk` char(100) NOT NULL,
`cz_zbpt` char(100) NOT NULL,
`cz_zxcd` char(10) NOT NULL,
`cz_ifzj` char(10) NOT NULL,
`cz_content` varchar(600) NOT NULL,
`pic1` varchar(50) NOT NULL,
`pic2` varchar(50) NOT NULL,
`pic3` varchar(50) NOT NULL,
`pic4` varchar(50) NOT NULL,
`pic5` varchar(50) NOT NULL,
`pic6` varchar(50) NOT NULL,
`cz_lxr` char(10) NOT NULL,
`cz_sex` char(6) NOT NULL,
`cz_tel` char(20) NOT NULL,
`cz_mobile` char(30) NOT NULL,
`cz_address` char(50) NOT NULL,
`cz_mail` char(32) NOT NULL,
`cz_uid` int(10) unsigned NOT NULL,
`cz_addtime` int(10) unsigned NOT NULL,
`cz_veiw` tinyint(1) NOT NULL default '1',
`cz_infotype` char(4) NOT NULL,
`hits` int(6) NOT NULL,
`cz_hz` tinyint(2) NOT NULL,
`tjtime1` int(10) NOT NULL default '0',
`tjtime2` int(10) NOT NULL default '0',
`cz_photo` varchar(500) default NULL,
`fynumber` varchar(20) default NULL,
`ipaddress` varchar(20) default NULL,
PRIMARY KEY (`id`),
KEY `cz_dq` (`cz_dq`),
KEY `cz_type` (`cz_type`),
KEY `cz_hx` (`cz_hx`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=gbk 是不是字符集的问题呢,请指教.
cz_dq int(3) NO MUL NULL
update house_cz set cz_infotype='个人',cz_dq='红花岗区' ...你想把字符型赋给int型,怎么可能呢?
这里面错误已经说得很明显了,不正确的'红花岗区'整型值
结果是不是STRICT_ALL_TABLES?如果是:set sql_mode='';
再执行你的更新sql,就正常了。
sql_mode STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 不对吗?
请教下:通过更改模式可以将字符型的值插入到整型字段?
house_cz CREATE TABLE `house_cz` (
`id` int(10) unsigned NOT NULL auto_increment,
`cz_dq` int(3) NOT NULL,
update house_cz set cz_infotype='个人',cz_dq='红花岗区'
Query OK, 0 rows affected (0.09 sec)mysql> show variables like 'sql_mode';
+---------------+---------------------+
| Variable_name | Value |
+---------------+---------------------+
| sql_mode | STRICT_TRANS_TABLES |
+---------------+---------------------+
1 row in set (0.00 sec)mysql> insert into test values(1,'abc');
ERROR 1366 (HY000): Incorrect integer value: 'abc' for column 'i' at row 1
mysql> set sql_mode='';
Query OK, 0 rows affected (0.02 sec)mysql> insert into test values(1,'abc');
Query OK, 1 row affected, 1 warning (0.05 sec)mysql> select * from test;
+------+------+
| id | i |
+------+------+
| 1 | 0 |
+------+------+
1 row in set (0.00 sec)
可以在你建立连接时设置,当前session有效。
这是我的数据库连接代码,应该怎样写才能让session有效呢,请大哥详示,谢谢$server = "localhost";
$username_conn = "root";
$password_conn = "123456";
$database = "test";
if ( !( $conn = mysql_connect( $server, $username_conn, $password_conn ) ) )
{
exit( "连接失败:".mysql_error( ) );
}
mysql_query( "set names 'gbk'" );
if ( !mysql_select_db( $database, $conn ) )
{
exit( "选择数据库失败:".mysql_error( ) );
}
date_default_timezone_set( "PRC" );