2010-08-20 3 views
2

Я получаю эту ошибку, когда я пытаюсь запустить эту команду MySQL:MySQL Ошибка синтаксис

CREATE TABLE READERWARE(TITLE VARCHAR_IGNORECASE NOT NULL, 
AUTHOR VARCHAR_IGNORECASE NOT NULL, 
ISBN CHAR, 
PUBLISHER VARCHAR_IGNORECASE, 
BOOKFORMAT CHAR, 
FIRST CHAR, 
SIGNED CHAR, 
PUBDATE VARCHAR_IGNORECASE, 
PUBPLACE VARCHAR_IGNORECASE, 
COPIES CHAR, 
RATING INTEGER, 
CONDITION INTEGER, 
CATEGORY INTEGER, 
READ CHAR, 
PRINT CHAR, 
HTMLEXPORT CHAR, 
VALUE CHAR, 
COMMENTS VARCHAR_IGNORECASE, 
DATEENTERED DATE NOT NULL, 
SOURCE CHAR, 
ROWKEY BIGINT NOT NULL, 
RETIRED1 CHAR, 
CART CHAR, 
ORDERED CHAR, 
LCCN VARCHAR_IGNORECASE, 
DEWEY VARCHAR_IGNORECASE, 
USERNUMBER VARCHAR_IGNORECASE, 
COPYRIGHTDATE VARCHAR_IGNORECASE, 
VALUEDATE VARCHAR_IGNORECASE, 
LOCATION INTEGER, 
SERIES INTEGER, 
PAGES INTEGER, 
KEYWORDS VARCHAR_IGNORECASE, 
DIMENSIONS VARCHAR_IGNORECASE, 
USER1 VARCHAR_IGNORECASE, 
USER2 VARCHAR_IGNORECASE, 
USER3 VARCHAR_IGNORECASE, 
USER4 VARCHAR_IGNORECASE, 
USER5 VARCHAR_IGNORECASE, 
USER6 VARCHAR_IGNORECASE, 
USER7 VARCHAR_IGNORECASE, 
USER8 VARCHAR_IGNORECASE, 
USER9 VARCHAR_IGNORECASE, 
USER10 VARCHAR_IGNORECASE, 
FILLER1 VARCHAR_IGNORECASE, 
FILLER2 VARCHAR_IGNORECASE, 
FILLER3 VARCHAR_IGNORECASE, 
FILLER4 VARCHAR_IGNORECASE, 
FILLER5 VARCHAR_IGNORECASE, 
FILLER6 VARCHAR_IGNORECASE, 
FILLER7 VARCHAR_IGNORECASE, 
FILLER8 VARCHAR_IGNORECASE, 
FILLER9 VARCHAR_IGNORECASE, 
FILLER10 VARCHAR_IGNORECASE, 
AUTHOR2 VARCHAR_IGNORECASE, 
AUTHOR3 VARCHAR_IGNORECASE, 
AUTHOR4 VARCHAR_IGNORECASE, 
AUTHOR5 VARCHAR_IGNORECASE, 
AUTHOR6 VARCHAR_IGNORECASE) 


Error Code : 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 'VARCHAR_IGNORECASE NOT NULL,AUTHOR VARCHAR_IGNORECASE NOT NULL,ISBN CHAR,PUBLISH' at line 1 

Я не уверен, что проблема есть. Любая помощь будет принята с благодарностью. Благодарю.

+0

, прочитайте, пожалуйста на нормализации баз данных SQL. Это хороший материал. Кроме того, для таблицы необходим первичный ключ. Кроме того, не указывайте имена столбцов в верхнем регистре. Кроме того, у MySQL есть типы, отличные от 'VARCHAR' и' INTEGER', например, 'DATE'. Какой должен быть ваш 'COPYRIGHTDATE'. – Borealid

ответ

7

Err, я думаю, проблема в том, что MySQL doesn't actually have тип VARCHAR_IGNORECASE.

HSQL от OpenOffice есть, но я не видел, чтобы он использовался в другом месте.

2

VARCHAR_IGNORECASE не является допустимым типом данных в MySQL.

Если вы хотите регистронезависимые текстовые поля с произвольной длиной, замените эти типы с TEXT COLLATE UTF8_GENERAL_CI

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