2016-10-05 19 views
1

私はmysqlを初めて使用しているので、データベースにテーブルを作成するためにphpmyadminを使用しています。私は可能な値 "manufacturer1"、 "manufacturer2"を持つ列挙型のフィールドメーカーを持っています...phpmyadminが列挙型の値を作成しないのはなぜですか?

私はENUMタイプを選択し、 "ENUM/SET値の編集"をクリックして希望の値を求めるポップアップを表示します。私は命令を休憩し、 "go"と "Manufacturer1"、 "Manufacturer2"、 "Manufacturer3"、 "Manufacturer4"はLength/Valuesには書かれていません。

テーブルを作成しようとすると、1064の構文エラーが発生します。私は、 "プレビューSQL" をクリックすると、私はこれを取得:

CREATE TABLE `test4_db`.`product` (`product_id` INT(11) NOT NULL AUTO_INCREMENT , `image_url` VARCHAR(255) NOT NULL , `manufacturer` ENUM(0) NOT NULL DEFAULT 'Manufacturer1' , `health` ENUM(0) NOT NULL , `missing` INT(11) NOT NULL , `statuss` ENUM(0) NOT NULL DEFAULT 'available' , `owner_id` INT(11) NOT NULL , `holder_id` INT(11) NOT NULL , PRIMARY KEY (`puzzle_id`)) ENGINE = InnoDB CHARSET=utf8 COLLATE utf8_bin; 

なぜphpmyadminの書き込みENUM(0)の代わりにENUMの( 'Manufacturer1'、 'Manufacturer2'、 'Manufacturer3'、 'Manufacturer4')?

+0

phpmyadmin uiを使用してデータを編集しないでください。むしろSQLクエリボックスを使用します。テーブル内のフィールドを編集/更新するには、 'UPDATE'クエリを使用します。これにより、目的の結果が得られます。 –

+0

また、 'tinyint(1)' i.p.oを使うこともできます。あなたがあなたのやり方でそれをやりたいのであれば 'enum' – Franco

+0

phpMyAdminを別のブラウザで試してみてください。違いはありますか? – Alexxus

答えて

3

で述べたようにこれはphpMyAdminの4.6.4のバグである代わりに、UIのクエリを使用して、より良いです。 https://github.com/phpmyadmin/phpmyadmin/issues/12480

これは4.6.5で修正される予定 -

はこれを参照してください。

一方、「プレビューSQL」を実行し、生成されたSQLをコピーして、ENUM(0)を必要な値に置き換えることができます。

また、以前のバージョンのphpMyAdminを使用してください。

+0

"プレビューSQL"の回避策は実際には動作します:) –

0

これを使用してください。healthstatuss列の列挙型を編集することを忘れないでください。私はちょうど例えば追加しました。

CREATE TABLE `test4_db`.`puzzles` ( 
    `puzzle_id` INT(11) NOT NULL AUTO_INCREMENT , 
    `image_url` VARCHAR(255) NOT NULL , 
    `manufacturer` ENUM('Manufacturer1', 'Manufacturer2', 'Manufacturer3') NOT NULL DEFAULT 'Manufacturer1' , 
    `health` ENUM('y', 'n') NOT NULL , 
    `missing` INT(11) NOT NULL , 
    `statuss` ENUM('y', 'n') NOT NULL DEFAULT 'available' , 
    `owner_id` INT(11) NOT NULL , 
    `holder_id` INT(11) NOT NULL , 
PRIMARY KEY (`puzzle_id`)) 
ENGINE = InnoDB CHARSET=utf8 COLLATE utf8_bin; 

その@Abhrapratimナグ

関連する問題