2016-11-21 2 views
0

Я пытаюсь создать таблицу в PHPMyAdmin со следующимя получаю 1064 ошибку в PHPMyAdmin

SQL : 

CREATE TABLE `umOrder`.`Bill` (
    `Id` INT(5) NOT NULL AUTO_INCREMENT , 
    `userID` VARCHAR(255) NOT NULL , 
    `product` VARCHAR(255) NOT NULL , 
    `quantity` INT(3) NOT NULL , 
    `price` DOUBLE(5) NOT NULL , 
    `date` VARCHAR(255) NOT NULL , 
    PRIMARY KEY (`Id`(5)) 
) ENGINE = MEMORY; 

Но постоянно получаю эту ошибку:

1064 - Вы имеете ошибку в вашем синтаксисе SQL; проверьте руководство, которое соответствует версии сервера MariaDB для корректного синтаксиса использовать вблизи ') NOT NULL, date VARCHAR (255) NOT NULL, PRIMARY KEY (Id (5))) ENGINE =' в строке 1

I действительно не понимаете, что означает ошибка? Есть идеи ?

ответ

1

key(id(5)) является подозреваемым. Но у вас есть еще одна ошибка: double не принимает аргумент длины.

должно работать:

CREATE TABLE `Bill` (
    `Id` INT(5) NOT NULL AUTO_INCREMENT , 
    `userID` VARCHAR(255) NOT NULL , 
    `product` VARCHAR(255) NOT NULL , 
    `quantity` INT(3) NOT NULL , 
    `price` DOUBLE NOT NULL , 
    `date` VARCHAR(255) NOT NULL , 
    PRIMARY KEY (`Id`) 
) ENGINE = MEMORY; 

Here является SQL Скрипки.

Примечание: Я не думаю, что полезно вводить аргументы длины после числовых типов (кроме decimal/numeric). Возможно, вы захотите удалить все из них.

1

Вы хотите назначить десятичное для двойной:

CREATE TABLE `umOrder`.`Bill` (
    `Id` INT (5) NOT NULL AUTO_INCREMENT, 
    `userID` VARCHAR (255) NOT NULL, 
    `product` VARCHAR (255) NOT NULL, 
    `quantity` INT (3) NOT NULL, 
    `price` DOUBLE (5,2) NOT NULL, 
    `date` VARCHAR (255) NOT NULL, 
    PRIMARY KEY (`Id`) 
) ENGINE = MEMORY; 
Смежные вопросы