2016-04-10 36 views
2

私は、MySQLテーブルを管理するために私のMacでPHPMyAdmin 4.6.0(現在の安定版)を使用しています。私は、次のスキーマを使用してテーブルを作成しました:PHPMyAdminを使用して行を削除できません

CREATE TABLE `table1` (
    `id` int(11) NOT NULL, 
    `name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL, 
    `table2id` int(11) NOT NULL, 
    `col2` float DEFAULT NULL, 
    `col3` float DEFAULT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; 

ALTER TABLE `table1` 
    ADD PRIMARY KEY (`id`), 
    ADD KEY `fk_table1_table2` (`table2id`); 

ALTER TABLE `table1` 
    MODIFY `id` int(11) NOT NULL AUTO_INCREMENT; 

TABLE1のデータを表示して、私は左側にチェックボックスを使用して行のいくつかを選択し、表の下のリンクを削除]を押します。

DELETE FROM `table1` WHERE ; 
DELETE FROM `table1` WHERE ; 
DELETE FROM `table1` WHERE ; 

注意をデータセットのIDが失敗するクエリの結果として、ここでは欠落していることを私が実行されるように、次のSQLクエリを示す、別のページにリダイレクトされています。ある行内の「削除」ボタンを押すと、同様のことが起こります。 WHERE句は、あまりにも、ここで欠落していることを

Do you really want to execute "DELETE FROM `table1` WHERE LIMIT 1"? 

注:モーダルは、次の出力が表示されます。ただし、別のデータベースの異なるテーブルや同じデータベース内の別のテーブルでも機能します。例えば、別のテーブルには、次のスキーマを持っています

CREATE TABLE `table3` (
    `id` int(11) NOT NULL, 
    `name` varchar(70) COLLATE utf8_unicode_ci DEFAULT NULL, 
    `shortname` varchar(3) COLLATE utf8_unicode_ci DEFAULT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; 

ALTER TABLE `table3` 
    ADD PRIMARY KEY (`id`); 

ALTER TABLE `table3` 
    MODIFY `id` int(11) NOT NULL AUTO_INCREMENT; 

実は私はPHPMyAdminのこの動作の原因となる、ここで任意の違いを見ることができません。何か案が?

+0

この問題を再現できません。あなたはhttps://demo.phpmyadmin.netのデモサーバーでそれを再現できますか?そのテーブルを別のデータベースにコピーすると、問題は解決しませんか?エクスポートしてから、新しいデータベースにインポート(またはコピー&ペースト)した場合は、それはまったく役に立ちますか? –

+0

また、ブラウザのキャッシュをクリアすることもできます。これは新しいインストールですか、それとも以前のphpMyAdminバージョンからアップグレードされていますか? –

+0

私は同じ問題を抱えています。最新バージョンのphpmyadmin – user1532587

答えて

0

UPDATE-phpMyAdmin 4.6.6このバグを修正しました。

How to upgrade phpMyAdmin in XAMPP to latest?

ORIGINAL POST

私は、私の環境ではなくdemo.phpmyadmin.net上でエラーを再現することができます。 InnoDBまたはMyISAMのテーブル名の下に以下のような大文字があると、この問題が発生する可能性があります。私はMacでphpMyAdminバージョン4.5.2、10.1.19を実行しているMacのXAMPPにあります - MariaDB - ソース配布、PHPバージョン5.6.28。

CREATE TABLE `MyTable1` (
    `id` int(11) NOT NULL, 
    `name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL, 
    `table2id` int(11) NOT NULL, 
    `col2` float DEFAULT NULL, 
    `col3` float DEFAULT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; 

ALTER TABLE `MyTable1` 
    ADD PRIMARY KEY (`id`), 
    ADD KEY `fk_MyTable1_table2` (`table2id`); 

ALTER TABLE `MyTable1` 
    MODIFY `id` int(11) NOT NULL AUTO_INCREMENT; 
0

おそらく外部キー制約on_deleteを設定しています。したがって、構造タブに行き、の関係ビューをクリックしてください。そこには、外部キー制約があります。 の場合はに変更してください。No Action

関連する問題