0

私は多くのデータベースを持っており、それぞれにテーブルがありますnames。UNIQUE KEYという名前の場合もname1あれば、同じUNIQUEKEYという名前の場合もありname2ます。この名前を標準化したいので、各データベースで実行する3つのクエリを準備しました。

ALTER IGNORE TABLE `names`
    DROP INDEX `name1`;
ALTER IGNORE TABLE `names`
    DROP INDEX `name2`;
ALTER TABLE `names`
    ADD UNIQUE `new_name` (`name`, `surname`);

しかし、エラーが発生しました:

SQL Error (1091): Can't DROP 'name1'; check that column/key exists

各データベースで実行するクエリのセットを1つ作成するにはどうすればよいですか?

4

1 に答える 1

3

コマンド ラインから SQL スクリプト ファイルを実行している場合は、エラーの無視を試みることができます。

mysql -f -u username -p password -e 'source script.sql'

編集

Ike のおかげで、これを行う正しい方法は次のとおりです。

mysql -f -u username -p password < script.sql
于 2011-03-10T13:36:34.180 に答える