2016-04-07 4 views
-4
CREATE TABLE zgd_users_table (
user_id INT NOT NULL AUTO_INCREMENT, 
user_name VARCHAR(50) NOT NULL, 
user_mobile VARCHAR(20) NOT NULL, 
password VARCHAR(50) NOT NULL, 
email VARCHAR(100), 
nickname VARCHAR(50) NOT NULL DEFAULT "Default Name", 
level TINYINT NOT NULL DEFAULT 3, 
locked TINYINT(1) NOT NULL DEFAULT false, 
create_time TIMESTAMP NOT NULL, 
comment VARCHAR(255), 
PRIMARY KEY(user_id); 

ERROR 1064(42000):SQL構文にエラーがあります。あなたのMySQLサーバーのバージョンに対応するマニュアルをチェックして正しい構文を確認してください。 '13行目近くにあります。なぜMySQLデータベースにテーブルを作成するとこのエラーが発生するのですか?

+2

行います ' ) '? 'PRIMARY KEY(user_id));' – lad2025

+1

あなたは最終クローズドパレンがありません:http://www.sqlfiddle.com/#!9/6bfd4。 –

+4

いつも?まあ...あなたはいつも無効なSQLを書きますので、私は推測します。 –

答えて

3

)でコマンドを閉じるのを忘れました!あなたのクエリは次のように変更します。DEFAULT"について

CREATE TABLE zgd_users_table (
    user_id INT NOT NULL AUTO_INCREMENT, 
    user_name VARCHAR(50) NOT NULL, 
    user_mobile VARCHAR(20) NOT NULL, 
    password VARCHAR(50) NOT NULL, 
    email VARCHAR(100), 
    nickname VARCHAR(50) NOT NULL DEFAULT 'Default Name', 
    level TINYINT NOT NULL DEFAULT 3, 
    locked TINYINT(1) NOT NULL DEFAULT false, 
    create_time TIMESTAMP NOT NULL, 
    comment VARCHAR(255), 
    PRIMARY KEY(user_id) 
); 

追加コメント:

単一引用符は、SQL内の文字列の開始と終了を示すために使用されています。二重引用符は一般にSQLでは使用されませんが、データベースごとに異なる場合があります。
ソース(あまりにもコメントを参照してください):https://stackoverflow.com/a/1992331/3840840

+1

[MySQLのマニュアル](http://dev.mysql.com/doc/refman/5.7/en/string-literals.html)によれば、両方のタイプの引用符が許可されています。エラーは最後に ')'がありません。 –

1

あなたが最後に閉じ括弧を逃しています。

1

欠落)閉じ括弧。作業するクエリは次のとおりです。

CREATE TABLE zgd_users_table (
user_id INT NOT NULL AUTO_INCREMENT, 
user_name VARCHAR(50) NOT NULL, 
user_mobile VARCHAR(20) NOT NULL, 
password VARCHAR(50) NOT NULL, 
email VARCHAR(100), 
nickname VARCHAR(50) NOT NULL DEFAULT "Default Name", 
level TINYINT NOT NULL DEFAULT 3, 
locked TINYINT(1) NOT NULL DEFAULT false, 
create_time TIMESTAMP NOT NULL, 
comment VARCHAR(255), 
PRIMARY KEY(user_id)); 
1

クエリであなたが欠場このクエリ)を試してみてください:あなたが最後 で閉じ括弧が欠落し

CREATE TABLE zgd_users_table (
user_id INT NOT NULL AUTO_INCREMENT, 
user_name VARCHAR(50) NOT NULL, 
user_mobile VARCHAR(20) NOT NULL, 
password VARCHAR(50) NOT NULL, 
email VARCHAR(100), 
nickname VARCHAR(50) NOT NULL DEFAULT "Default Name", 
level TINYINT NOT NULL DEFAULT 3, 
locked TINYINT(1) NOT NULL DEFAULT false, 
create_time TIMESTAMP NOT NULL, 
comment VARCHAR(255), 
PRIMARY KEY(user_id)); 
0

構文エラー、それはどこに最終的なもので

CREATE TABLE zgd_users_table (
    user_id INT NOT NULL AUTO_INCREMENT, 
user_name VARCHAR(50) NOT NULL, 
user_mobile VARCHAR(20) NOT NULL, 
    password VARCHAR(50) NOT NULL, 
email VARCHAR(100), 
nickname VARCHAR(50) NOT NULL DEFAULT "Default Name", 
level TINYINT NOT NULL DEFAULT 3, 
locked TINYINT(1) NOT NULL DEFAULT false, 
create_time TIMESTAMP NOT NULL, 
comment VARCHAR(255), 
PRIMARY KEY(user_id));