Corredor

ウェブ、プログラミングの勉強メモ。

PL/SQL

Oracle DB で SQL ファイルをスクリプトとして実行した時に Sleep・Wait 処理を挟む

Oracle DB の操作中、Sleep・Wait 的な処理を挟めることが分かったのでやってみた。 先に、対象の環境で DBMS_LOCK 権限を付与しておく。 SYS/SYSDBA@my_oracle AS SYSDBA GRANT EXECUTE ON DBMS_LOCK TO my_db; 次に、SQL スクリプト中で DBMS_LOCK.SLEEP()…

Oracle DB でのプロシージャの作り方

Oracle DB でプロシージャを作り、それを呼び出す方法。 -- プロシージャを作る Create Or Replace Procedure myProcedure ( param In Varchar2 ) Is var Number; Begin Execute Immediate 'SELECT hoge FROM my_table WHERE name = ''' || param || '''' In…

PL/SQL の基本的な書き方をまとめてみる

PL/SQL でよくある「SELECT した結果を1行ずつ操作する」という処理を雛形的に書いてみた。その他、よくあるイディオムをまとめてみた。 基本形 ログを出力する UPDATE 時の更新行数を知る 暗黙的カーソル処理 基本形 Declare Cursor csr Is SELECT hoge FRO…

Oracle DB の全テーブルのレコード数と最終更新日時を求めてみる PL/SQL 版

前回の記事と全く同じことを PL/SQL でやってみる。 neos21.hatenablog.com これも TableList.sql とでも名付けて Start で実行してやればデータが CSV 形式で保存できる。 Set feedback off Set serverout on Set trimspool on Spool C:\TableList.csv DECL…