我从 mysql_error() 得到以下信息:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near -->'assets' ('assetid' INT UNSIGNED NOT NULL AUTO_INCREMENT , PRIMARY KEY('assetid'<-- at line 1
我也尝试过这样的事情:
'assets' ('assetid' INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
...但没有运气。 mysql版本是5.0.7。
编辑:
实际上,我已经尝试过先不加('),然后再放入。代码是动态的,但这些是示例:
CREATE TABLE 'assets' (
'assetid' INT UNSIGNED NOT NULL AUTO_INCREMENT,
PRIMARY KEY('assetid'),
'rfid' VARCHAR( 128 ) ,
'createddate' DATE ,
'modifieddate' DATE ,
'curlocid' INT( 11 ) ,
'type' VARCHAR( 128 ) ,
'brand' VARCHAR( 128 ) ,
'name' VARCHAR( 128 ) ,
'condition' VARCHAR( 128 )
);
编辑2:
刚才我尝试用反引号(`)更改所有单引号(')..发生了其他错误..
Can't create table 'mydb.assets' (errno: 121)
这是更好还是更糟?
编辑3:
我尝试使用不同的表名称创建它,你猜怎么着?有用!天哪,为什么我不能创建表名“assets”??是不是因为之前的操作还有剩余??如果是的话我该如何清洁它?如果我说我通过删除表的文件来删除表怎么办??(frm,myd,myi)(由于懒惰而没有删除它)..我该如何修复它?
最佳答案
查看所有代码会很有帮助。
根据我所看到的情况,您需要消除所有这些蜱虫。这应该有效:
create table assets (
assetid int unsigned not null auto_increment primary key
);
我在 MySQL Server 5.5 中运行得很好
关于php - MySQL建表错误?也许是版本问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5672207/