2012-02-27 6 views
-2
CREATE TABLE 'categories'(
    'id' SMALLINT NOT NULL AUTO_INCREMENT, 
    'category' VARCHAR(30) NOT NULL, 
    PRIMARY KEY ('id'), 
    UNIQUE KEY 'category' ('category') 
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 

CREATE TABLE 'orders' ( 
    'id' INT UNSIGNED NOT NULL AUTO_INCREMENT, 
    'user_id' INT UNSIGNED NOT NULL, 
    'transaction_id' VARCHAR(19) NOT NULL, 
    'payment_status' VARCHAR(15) NOT NULL, 
    'payment_amount' DECIMAL(6,2) UNSIGNED NOT NULL, 
    'payment_date_time' TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, 
    PRIMARY KEY ('id'), 
    KEY 'user_id' ('user_id') 
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 

CREATE TABLE 'pages' ( 
    'id' MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT, 
    'category_id' SMALLINT UNSIGNED NOT NULL, 
    'title' VARCHAR(100) NOT NULL, 
    'description' TINYTEXT NOT NULL, 
    'content' LONGTEXT NOT NULL, 
    'date_created' TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, 
    PRIMARY KEY ('id'), 
    KEY 'category_id' ('category_id'), 
    KEY 'creation_date' ('date_created') 
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 

CREATE TABLE 'pdfs' ( 
    'id' SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT, 
    'tmp_name' CHAR(40) NOT NULL, 
    'title' VARCHAR(100) NOT NULL, 
    'description' TINYTEXT NOT NULL, 
    'file_name' VARCHAR(40) NOT NULL, 
    'size' MEDIUMINT UNSIGNED NOT NULL, 
    'date_created' TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, 
    PRIMARY KEY ('id'), 
    UNIQUE KEY 'tmp_name' ('tmp_name'), 
    KEY 'date_created' ('date_created') 
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 

CREATE TABLE 'users' ( 
    'id' INT UNSIGNED NOT NULL AUTO_INCREMENT, 
    'type' ENUM ('member','admin') NOT NULL, 
    'username' VARCHAR(30) NOT NULL, 
    'email' VARCHAR(80) NOT NULL, 
    'pass' VARBINARY(32) NOT NULL, 
    'first_name' VARCHAR(20) NOT NULL, 
    'last_name' VARCHAR (40) NOT NULL, 
    'date_expires' DATE NOT NULL, 
    'date_created' TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, 
    'date_modified' TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00', 
    PRIMARY KEY ('id'), 
    UNIQUE KEY 'username' ('username'), 
    UNIQUE KEY 'email' ('email') 
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 

.................................. ...........................................SQL 구문 오류 - 오류를 찾을 수 없습니다.

찾을 수 없습니다. 여기에 SQL 오류가 있습니다.

MySQL은 말했다 :

# 1064 - 당신은 당신의 SQL 구문에 오류가있다; 1

도와주세요 NOT '줄 ('ID 'SMALLINT NOT NULL AUTO_INCREMENT,'카테고리 'VARCHAR (30) 근처의'카테고리 '를 사용할 수있는 권리 구문에 대한 MySQL 서버 버전에 해당하는 설명서를 확인 . 내가 공유 서버에 MySQL의 전 4.4.x를 사용하고 있습니다.

당신은 '와 테이블 및 열 이름을 둘러싼하고
+0

이 문제가 발생했는지는 확실하지 않지만 테이블 이름은 작은 따옴표로 묶지 않아도됩니다. 그걸 던지는 것이 될 수 있습니다. 나는 한 번에 하나의 테이블을 생성하는 것으로 시작하여 충돌을 일으킬 수있는 하위 라인인지 확인합니다. – Brian

+3

MySQL 4.4? 정말? – gbn

답변

7

, 그것은 '해야한다 (역 따옴표하는 것은)

CREATE TABLE `categories` 
(`id` SMALLINT NOT NULL AUTO_INCREMENT, 
`category` VARCHAR(30) NOT NULL, 
PRIMARY KEY (`id`), 
UNIQUE KEY `category` (`category`) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 
+0

방금 ​​입력했습니다. – RichardW11

0

이 당신의 따옴표를 제거하기 또는 @ Joachim Isaksson이 말했듯이, 백틱을 사용한다`.

CREATE TABLE categories (id SMALLINT NOT NULL AUTO_INCREMENT, category VARCHAR(30) NOT NULL, PRIMARY KEY (id), UNIQUE KEY(category) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 

다음번에도 문제를 단순화하십시오. 첫 번째 CREATE TABLE 문에 문제가 있습니다. 다른 모든 것을 인쇄 할 필요가 없습니다. 또한 어떤 형식은 너무 좋을 것이다 :-).

+0

도움을 주셔서 감사합니다. 문제가 해결되었습니다. 나는 방금 MySQL/PHP를 배우기 시작했고, 그 순간에 힘든 전투를 찾고 있습니다. 참조 : @ Joachim Isaksson –

관련 문제