2013-08-01 3 views
0

Код:Создание таблиц в PhpMyAdmin - ошибка 1064

  delimiter $$ 

      CREATE TABLE "login" (
       "IdUser" int(11) NOT NULL AUTO_INCREMENT, 
       "username" varchar(45) CHARACTER SET latin1 NOT NULL, 
       "pass" varchar(45) CHARACTER SET latin1 NOT NULL, 
       PRIMARY KEY ("IdUser") 
      ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8$$ 

      CREATE TABLE "photos" (
       "IdPhoto" int(11) NOT NULL AUTO_INCREMENT, 
       "title" varchar(100) CHARACTER SET latin1 NOT NULL, 
       "IdUser" int(11) NOT NULL, 
       PRIMARY KEY ("IdPhoto") 
      ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8$$ 

Ошибки:

#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 '"login" (
    "IdUser" int(11) NOT NULL AUTO_INCREMENT, 
    "username" varchar(45)' at line 1 

#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 '"photos" ("IdPhoto" int(11) NOT NULL AUTO_INCREMENT, "title" varchar(100)' at line 1 

Любые идеи? Я новичок в этом, поэтому любая помощь будет очень оценена. .

ответ

0

вы должны использовать обратные кавычки `не двойные кавычки" подобного

 CREATE TABLE `login` (

же для других столбцов

1

Используйте обратные кавычки, как это `вместо двойных кавычек в течение

. Например:

`IdUser` int(11) NOT NULL AUTO_INCREMENT, 
1

Вы можете использовать двойные кавычки в идентификаторе entifiers, только если включен режим SQL ANSI_QUOTES.

SET sql_mode='ANSI_QUOTES'; 

Вот SQLFiddle демо

В противном случае просто использовать обратно клещей или вообще ничего, если ваши идентификаторы не в заповедном списке слов.

CREATE TABLE `login` (
    `IdUser` int(11) NOT NULL AUTO_INCREMENT, 
    `username` varchar(45) CHARACTER SET latin1 NOT NULL, 
    `pass` varchar(45) CHARACTER SET latin1 NOT NULL, 
    PRIMARY KEY (`IdUser`) 
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 
; 

CREATE TABLE `photos` (
    `IdPhoto` int(11) NOT NULL AUTO_INCREMENT, 
    `title` varchar(100) CHARACTER SET latin1 NOT NULL, 
    `IdUser` int(11) NOT NULL, 
    PRIMARY KEY (`IdPhoto`) 
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 
; 

Вот SQLFiddle демо

Дальнейшее чтение Schema Object Names

Смежные вопросы