我想创建一个过去一直很容易的新表。这次我试图通过研究我用作我的表的默认排序规则来提高我做事情的质量。看了一下后,我决定utf8mb4_unicode_ci
是要走的路。疑难解答MySQL语法错误
在这一点上,我创建了一个11行的表。每次我尝试提交它告诉我,
#1064 - 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
') NOT NULL , `password` INT(10000) NOT NULL , `hash` VARCHAR(10000) NOT
NULL ,' at line 1
我从来没有自动生成的SQL给我一个错误之前。所以,我认为这与我选择的联盟有关。此外,它似乎有一个接近我的双重问题。这导致我相信我不能使用我正在使用的排序规则与Double
?
任何帮助,将不胜感激。
谢谢
CREATE TABLE `skel`.`accounts` (`id` INT(11) NOT NULL AUTO_INCREMENT
, `username` VARCHAR(255) NOT NULL , `email` VARCHAR(255) NOT NULL ,
`first` VARCHAR(255) NOT NULL , `last` VARCHAR(255) NOT NULL , `phone`
VARCHAR(50) NOT NULL , `address` VARCHAR(255) NOT NULL , `rate`
DOUBLE(20) NOT NULL , `password` VARCHAR(40) NOT NULL , `hash`
VARCHAR(40) NOT NULL , `confirmed` VARCHAR(5) NOT NULL , PRIMARY KEY
(`id`)) ENGINE = InnoDB;
双精度规格是否合法?另外,你认为'int(10000)'完成了什么? – Uueerdo
10000 int是一个意外。 – wuno
为什么你认为这个问题与排序有关?整理不会改变MySQL语法规则。 – Barmar