目次
バッチ処理とは
バッチ処理とは、プログラムの一連の命令を順番に、自動で実行する処理のことを指します。これはデータベース管理でよく用いられ、特に大量のデータに対するCRUD(作成、読み取り、更新、削除)操作を効率よく行うために使用されます。バッチ処理のメリット
SQLでのバッチ処理の基本
SQLでバッチ処理を行う場合、一般的にはストアドプロシージャやスクリプトファイルを使用します。これらの方法でSQL文をまとめ、一括で実行することが可能です。ストアドプロシージャ
ストアドプロシージャは、一連のSQL文を一つの関数として保存しておき、それを呼び出して実行する方法です。CREATE PROCEDURE UpdatePrices()
BEGIN
UPDATE products SET price = price * 0.9;
DELETE FROM products WHERE price < 10;
END;
CALL UpdatePrices();
スクリプトファイル
SQL文をテキストファイルに保存し、そのファイルをデータベースエンジンに渡して実行する方法です。-- update_prices.sql
UPDATE products SET price = price * 0.9;
DELETE FROM products WHERE price < 10;
実践例:在庫管理システムの自動更新
在庫管理システムでのバッチ処理による自動更新の例を考えてみましょう。在庫データのテーブル
| 商品ID | 商品名 | 在庫数 | 価格 |
|---|---|---|---|
| 1 | りんご | 100 | 200 |
| 2 | バナナ | 50 | 100 |
バッチ処理のSQLスクリプト
以下は、在庫数が50以下の商品の価格を10%上げ、100以上の商品の価格を5%下げるSQLスクリプトです。BEGIN;
UPDATE inventory SET price = price * 1.10 WHERE stock <= 50;
UPDATE inventory SET price = price * 0.95 WHERE stock >= 100;
COMMIT;

コメント