PLSQLについて
時間がきたら動くようなバッチファイルを作成したいのですが、
ソースコードを書く上でわからないあります。
下記は作成したソースコードですが
変数curA_recのデータ型はcurAのROWTYPEになります。
【質問1】dbms_outputの箇所を変更して抜き出したレコードをTAB区切りのtxt形式で出力する際の具体的なステートメントがわかりません。
【質問2】このファイルを任意のディレクトリにおいて時間がきたらファイルを実行するようにしたいのですがデータベース接続のためのConnect文を記述する箇所は一番上のset serveroutputの下に記述していいのでしょうか?
どなたか詳しい方お願いします。
<ソース>
set serveroutput on
declare
cursor curA is <SQL文>
curA_rec curA%ROWTYPE;
BEGIN
open curA;
LOOP
fetch curA INTO curA_rec;
exit when curA%NOTFOUND;
dbms_output.put_line(curA_rec.伝票番号||'
'||curA_rec.伝票日付||'
'||curA_rec.出荷先店番||'
'||curA_rec.ブランド品番||'
'||curA_rec.JANコード||'
'||curA_rec.出荷数量||'
'||curA_rec.商品単価||'
'||curA_rec.商品名||'
'||curA_rec.カラー名||'
'||curA_rec.サイズ名||'
'||curA_rec.ブランド||'
'||curA_rec.サブブランド||'
'||curA_rec.大分類||'
'||curA_rec.中分類||'
'||curA_rec.小分類||'
'||curA_rec.カラー||'
'||curA_rec.サイズ);
END LOOP;
CLOSE curA;
END;
No.3ベストアンサー
- 回答日時:
> set Colsep を指定するときに''の中でTABを押すと出力されるファイルもTAB区切りになるのでしょうか?
Yes
> また、出力ファイルの最後に「~行選択されました。」の文字は消すことは出来ないのでしょうか?
こちらをどうぞ。
http://oracle.se-free.com/utl/C1_csv.html
No.2
- 回答日時:
【質問1】
タブはchr(9)で表現できるので
curA_rec.伝票番号||chr(9)||curA_rec.伝票日付||・・・
とすればいいのではないでしょうか。
【質問2】
set serveroutput on
はDBに接続していないとできないですよね?
この無名ブロックとは別のsqlファイルを用意し
その中でconnectして、無名ブロックのsqlファイルを実行する、とすればいいのではないでしょうか。
No.1さんが示してくれた方法の方が簡単だとは思います。
No.1
- 回答日時:
ご回答ありがとうございます。
SPOOLを使って出力することができたのですが
set Colsep を指定するときに''の中でTABを押すと出力されるファイルもTAB区切りになるのでしょうか?
また、出力ファイルの最後に「~行選択されました。」の文字は消すことは出来ないのでしょうか?
お手数ですが教えていただければ幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- オンラインゲーム Switchでフォートナイトをやってます。 今日いきなりRECって表示されました。 どうしたら直りま 1 2022/06/18 03:26
- 営業・販売・サービス 内容がよくわからないバイト 5 2022/08/07 08:32
- Visual Basic(VBA) 1つの入力フォルダの値を読み込み、3分割をして新しい変数に代入する方法を教えていただきたいです。 読 4 2022/10/17 20:52
- その他(プログラミング・Web制作) FORTRAN77の配列(除算) 2 2023/02/01 14:34
- ホラー・ミステリー ホラー映画でオススメの"怖い"やつはありますか? 大体王道どころは押さえたのでもう潮時かもしれません 5 2023/03/06 17:08
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) VBAで最新のデータを別シートに転記する方法をお教えください。 3 2022/04/07 19:20
- Visual Basic(VBA) Excel VBA 複数ブックシートごとにデータを統合する方法について 4 2022/05/20 14:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLPLUSで結果を画面に表示しない
-
selectした結果の余計な余白を...
-
AccessからExcelのファイルを起...
-
SQL*PLUSで 定期的にSQLを発行...
-
ORACLEから各テーブルをCSV形式...
-
動的にSPOOLファイルのファイル...
-
PLSQLでファイルに書き込みをし...
-
『ALTER SYSTEM』と『ALTER DAT...
-
batファイルからsql文実行
-
sqlplusの操作をシェル上で
-
UDBのログファイル設定
-
特定のエクセルファイルを起動...
-
【Excel】[Expression.Error] ...
-
アクセスクエリ(複数)→マクロ...
-
【CSVファイル】先頭の文字列に...
-
共有フォルダに誰が何にアクセ...
-
エクセルVBAでフォルダ内の全フ...
-
Access95のエクスポートで教え...
-
ACCESSのモジュールエラー?
-
Becky!で「メールサーバーへの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLPLUSで結果を画面に表示しない
-
selectした結果の余計な余白を...
-
AccessからExcelのファイルを起...
-
動的にSPOOLファイルのファイル...
-
dmpファイルをインポートせずに...
-
Oracleでインスタンスを複数に...
-
ストアドプロシージャの出力に...
-
ORACLEから各テーブルをCSV形式...
-
Accessのレポート出力をWordに...
-
DB2のコマンドラインexportで複...
-
SQLServer2005でSELECTした結果...
-
PLSQLでファイルに書き込みをし...
-
mod_plsql使用時のDBMS_OUTPUT....
-
SQL*PLUSで 定期的にSQLを発行...
-
sqlplusの操作をシェル上で
-
sqliteはExcelと連携できますか?
-
レポートをpdfに変換する方法
-
DB2にspoolコマンドみたいなの...
-
プロファイラを裏で実行継続す...
-
ファイルから直接SQLを実行...
おすすめ情報