2013-06-19 3 views
0

$createtable=mysql_query("CREATE TABLE IF NOT EXISTS users(username VARCHAR(20),password VARCHAR(20),read TINYINT(1),write TINYINT(1),search TINYINT(1))");오류 사용하여 MySQL의 테이블을 생성 PHP 나는 위의 쿼리를 사용하여 테이블을 만들려고 다음과 같은 오류 얻을

: 만드는 중 오류가 사용자 테이블을 : 당신은 당신의 SQL 구문에 오류가 있습니다를; 라인 1에서 'TINYINT (1), TINYINT (1), TINYINT (1) 검색') 근처에서 사용할 올바른 구문에 대해서는 MySQL 서버 버전에 해당하는 매뉴얼을 확인하십시오.

어떻게 성공적으로 테이블? 미리 감사드립니다.

+2

'read'는 MySQL의 예약 단어 역 따옴표에 의해 그들 주위 키워드를 예약되어 , 그래서 그것을 작동 시키려면 backticks로 감쌀 필요가있다. 가능하다면 필드 이름을 변경해야합니다. – andrewsi

답변

1

$createtable=mysql_query("CREATE TABLE IF NOT EXISTS users(username VARCHAR(20),password VARCHAR(20),`read` TINYINT(1),`write` TINYINT(1),search TINYINT(1))"); 

당신이 read을 시도하고 당신이해야하므로 write는 MySQL의

+0

감사합니다. 완벽하게 작동했습니다. – MrShabana

+0

당신을 환영합니다 :)! –

0

시도 :

$createtable=mysql_query("CREATE TABLE IF NOT EXISTS users(`username` VARCHAR(20),`password` VARCHAR(20),`read` TINYINT(1),`write` TINYINT(1),`search` TINYINT(1))"); 
+1

이것이 효과적 일 수는 있지만 일반적으로 예약어를 열 이름으로 사용하는 것은 바람직하지 않습니다. – keithhatfield

+0

는''write''이어야합니다 [reserved-words] (http://dev.mysql.com/doc/refman/4.1/en/reserved-words.html) – amigura

관련 문제