以前の投稿で述べたように、データベースサーバーのデフォルト設定を変更すると、公開されたプロジェクトのデータに対する誤ったクエリが原因で、既存のデータが望ましくなく変更されることになります。したがって、以前の投稿で述べたようなコマンドを実装するには、サンプルデータに対してテスト環境で実行し、正しくテストしてから実行する必要があります。
私の提案はWHERE
、更新がテーブル内のすべての行に対して機能する必要がある場合に、すべての条件のすべての行をループする条件ステートメントを作成することです。たとえば、テーブルにID値が含まれている場合、条件ID > 0
を使用してすべての行を選択できます。
/**
* For successful result, "id" column must be "Not Null (NN)" and defined in
* INT data type. In addition, the "id" column in the table must have PK, UQ
* and AI attributes.
*/
UPDATE schema_name.table_name
SET first_column_name = first_value, second_column_name = second_value, ...
WHERE id > 0;
テーブルにid列が含まれていない場合、nullにできない列をチェックすることにより、すべての行で更新操作を実行できます。
/**
* "first_column_name" column must be "Not Null (NN)" for successful result.
*/
UPDATE schema_name.table_name
SET first_column_name = first_value, second_column_name = second_value, ...
WHERE table_name.first_column_name IS NOT NULL;