MySQLでストアドプロシージャを作成する方法
パフォーマンステストなどで大量のテストデータを作成する場合などにストアドプロシージャでループしてインサート文を発行するストアドプロシージャを作ってみます。
MySQLでのストアドプロシージャ作成方法です。
1 2 3 4 5 6 7 8 9 10 11 |
mysql> delimiter // -> create procedure loop_ins(in x int,in y int) -> begin -> while x <= y do -> insert into sample_table values (cast(x as char),'test'); -> set x = x + 1; -> end while; -> end -> // Query OK, 0 rows affected (0.00 sec) mysql> delimiter ; |
これでloop_insというプロシージャ作成が完了です。実行するにはcallします。
1 |
mysql> call loop_ins(1, 4000) |
プロシージャ削除するには
1 |
drop procedure loop_ins; |
とします。
プロシージャの内容を確認するには
1 |
show create procedure プロシージャ名; |
とします。
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^