6

PhpMyAdmin を使用して MySQL データベースにローカルに保存したデータベースからいくつかのエントリをエクスポートしました。オンラインでホストされている宛先データベースのエントリのみを置き換えたいと考えています。残念ながら、私がそうしようとすると、PHPMyAdmin はそれらの投稿が既に存在するため、削除できないと言います。

残りの投稿内でこれらのエントリを手動で検索し、一度に 1 つずつ削除するには時間がかかるため、インポート時にこれらのエントリを上書きするための回避策があるかどうか疑問に思っていました.

前もって感謝します!

4

3 に答える 3

5

これは、それを行うための迅速で汚い方法です。他の人はより良い解決策を持っているかもしれません:

INSERT クエリを実行しようとしているようですが、phpMyAdmin はそれらが既に存在すると言っています。UPDATE クエリを使用すると、情報を更新できます。

そこにあるクエリをテキスト エディターにコピーします。できれば、Notepad++ や Gedit などの検索と置換を処理できるエディターにコピーし、いくつかのコードを置き換えて、クエリを INSERT から UPDATE に変更します。

参照: http://dev.mysql.com/doc/refman/5.0/en/update.html

または、それらを削除してから INSERT クエリを実行することもできます。

検索と置換でいくつかのロジックを使用して、最初にそれらを取り除く DELETE クエリを作成できる場合があります。

http://dev.mysql.com/doc/refman/5.0/en/delete.html

于 2012-08-30T16:39:28.453 に答える
2

insert on duplicate をチェックしてください。ローカルに保存されているエントリに構文を追加するか、一時データベースにインポートしてからINSERT ... SELECT ... ON DUPLICATE KEY UPDATE. スキーマを投稿していただければ、より適切なガイドに役立ちます。

于 2012-08-30T19:17:16.103 に答える