標記の件に関しまして
私はデータベースに関する知識は全く無いのですが
SEが私のクライアントに設定した
SQL*PLUSを使用してた売上データベースからのデータの抽出
機能がありまして
これとは違う条件でのデータ抽出が必要となり
何とかSQL文を部分的に加工して目的が達成できるかどうか
調べているところであります。
■疑問点■
SQL*PLUSのコマンドファイルは既に作成されていて
@~でメモ帳ファイルに記述されているSQL文を
指定すればSPOOLでデータが別のテキストファイルに
抽出されるようになっているようです。
この場合に
既存のSQL文が記述されているメモ帳ファイルの抽出条件を
加工してコマンドにて加工後のファイルを@~で実行すれば
必要としているデータを抽出することができるでしょうか?
あと
現在使用しているSQLで下記の部分が共通して記述されて
いるのですがこれはどういった意味でしょうか。
SET ECHO OFF
SET HEADING OFF
SET PAGESIZE 0
SET FEEDBACK OFF
SET LINESIZE 30000
SET TRIMSPOOL ON
SPOOL C:ファイルの場所
■ここに抽出条件があるようです。■
SPOOL OFF
EXIT 0;
大変申し訳ございませんが
現在はSEから購入したシステムから紙ベースで
出力して手作業で入力を行っているため
何とかデータベースから直接抽出できないか
模索しているところであります。
アドバイス頂けますでしょうか。
宜しくお願いします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
>SQL*PLUSは
>使用するたびにコマンドから呼び出すのではなく
>予めファイルを作成して次回からはこのファイルをクリックして
>使用することができるのでしょうか?
>現在はSEから購入したシステムから紙ベースで
>出力して手作業で入力を行っているため
手作業で「sqlplus ユーザ/パスワード」でログインして作業しているということでしょうか。
それではWindowsのバッチファイル内に以下のように記述して
バッチファイルをダブルクリックすれば自動実行できます。
sqlplus ユーザ/パスワード @SQLファイル名
「sqlplus bat」で検索すれば例はたくさんありますよ。
No.2
- 回答日時:
補足です。
ざっと見た感じ、データ以外の出力を抑制するような記述と思います。
早速ありがとうございます。
みなさんから回答を待っている間に
調べていましたら
システム変数の変更のようですね。
固定長のファイルのファイル出力がうまくいかない
等の記述がありましたがよく分かりませんでした。
大変申し訳ございませんが
SQL*PLUSは
使用するたびにコマンドから呼び出すのではなく
予めファイルを作成して次回からはこのファイルをクリックして
使用することができるのでしょうか?
あと違う抽出条件を設定する場合は
現在使用しているSQLを加工して
@で実行することは可能なのでしょうか?
※おそらく記述ファイルはコマンドファイルが置いてある
フォルダの中にないとダメなのではないかと…。
No.1
- 回答日時:
以下のような感じだと思います。
SET 文を含まないものと含むものの spool ファイルを比較すると
わかりやすいと思います。
SET ECHO OFF -> SQL文を出力しなくなります。
SET HEADING OFF -> カラム名を出力しなくなります。
SET PAGESIZE 0 -> 1ページの行数を制限を無くします。
SET FEEDBACK OFF -> 憶えてません。
SET LINESIZE 30000 -> 1行30000文字まで改行しなくなります。
SET TRIMSPOOL ON -> 1行の最後についている空白を省きます。
SPOOL C:ファイルの場所 -> 上記設定が反映され、select した結果がspoolファイルに出力されるようにします。
■ここに抽出条件があるようです。■
SPOOL OFF -> 出力した select 結果をファイルに書き込むと共にspoolファイルをクローズします。
EXIT 0; -> SQL*Plus の戻り値を0にします。
さらに詳しく知りたい場合はマニュアルを見てみてください。
無償のユーザ登録が必要になります。
http://www.oracle.com/technology/global/jp/index …
参考URL:http://www.oracle.com/technology/global/jp/index …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) Sheet2の日付をキーにオートフィルターで2023年1月のデータを抽出し、Sheet3へ書き出すた 2 2023/03/06 23:57
- Access(アクセス) Access VBAで条件を追加する(書き込む)場所 2 2022/03/23 12:05
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Excel(エクセル) Excelの関数でこんな処理ができますか 1 2023/02/08 13:46
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Access(アクセス) スキルシートのエクセルの項目に 2 2023/04/04 22:41
- PHP PHP MySql ページング 2 2022/09/20 06:38
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
selectした結果の余計な余白を...
-
SQLPLUSで結果を画面に表示しない
-
AccessからExcelのファイルを起...
-
DB2にspoolコマンドみたいなの...
-
batファイルからsql文実行
-
レポートをpdfに変換する方法
-
SQLServer2005でSELECTした結果...
-
共有フォルダに誰が何にアクセ...
-
特定のエクセルファイルを起動...
-
Access95のエクスポートで教え...
-
ファイルメーカーへネットワー...
-
【Excel】[Expression.Error] ...
-
「1004:アプリケーション定義...
-
C言語でのこぎり波を作る方法
-
ACCESS で 項目名を出力せずに...
-
Access 参照設定について
-
【CSVファイル】先頭の文字列に...
-
VBAでCSVファイルが使用中かど...
-
javaで人工衛星の軌道を表示す...
-
アクセスクエリ(複数)→マクロ...
マンスリーランキングこのカテゴリの人気マンスリー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を実行...
おすすめ情報