我有一个MyISAM表,其中表名是test,字段只有一个field1长度是2位长,但里面的数据显示field1的数据可以显示到4位,如1234,2345,我用select * from test where field1=1234;可以查到结果,但如何1234加上了双引号就不能查到结果.
而我向该表加入记录时,只能加2位数据,如12,23,45,不能加到4位长,真的不清楚他的表是怎么搞的,麻烦各位赐教,谢谢!
而我向该表加入记录时,只能加2位数据,如12,23,45,不能加到4位长,真的不清楚他的表是怎么搞的,麻烦各位赐教,谢谢!
解决方案 »
- 关于主动数据库的问题
- 大虾们,这个问题怎样解决(我是新手)
- 单表数据量超60万条就不行了。怎么办。
- MYSQL乱码问题,急!
- mysql触发器的问题,请高工指点啊!
- SQL 2000 sp2 及更低版本不受此版本的 Windows 支持。
- 什么原因导致配置了binlog,但binlog文件不增加
- 这个是什么错误呢,设置外键时显示ERROR 1022: Can't write; duplicate key in table '#sql-434_2'
- php在做MySQL还原功能,报诡异的错误
- .sql中grant设置动态创建的表权限给指定用户
- PHP如何得到mysql数据表的字段名?
- 为什么创建用户后,phpmyadmin不能进入MySQL的数据库?
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
---------------------------------------
| Table | Create Table |
---------------------------------------
| test |CREATE 'test'(
'field1' char(5) not null default ''
)ENGINE=myISAM DEFAULT CHARSET=gbk;
----------------------------------------
1 row in set (0.00sec)而用select * from test;显示内容如下:
--------------
| field1 |
--------------
| 5016984585 |
| 5016984586 |
| 12345 |
3rows in set(0.00sec)5016984585,5016984585是以前表的记录,而12345是新增加的记录,我想加一条记录在案是1234567890,但不能加进去.
mysql> show variables like "sql_mode"
-> ;
+---------------+---------------------------------------------------------------
-+
| Variable_name | Value
|
+---------------+---------------------------------------------------------------
-+
| sql_mode | STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
|
+---------------+---------------------------------------------------------------
-+
1 row in set (0.03 sec)
设置我这样的