質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.51%
Oracle

Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。

PL/SQL

PL/SQL (Procedural Language/Structured Query Language) はOracle CorporationによるSQL(非手続き型言語)を手続き型言語に拡張させるために開発されたプログラミング言語です。

Q&A

解決済

1回答

4340閲覧

plsql テキストファイル読み込み DB保管

退会済みユーザー

退会済みユーザー

総合スコア0

Oracle

Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。

PL/SQL

PL/SQL (Procedural Language/Structured Query Language) はOracle CorporationによるSQL(非手続き型言語)を手続き型言語に拡張させるために開発されたプログラミング言語です。

0グッド

0クリップ

投稿2017/10/13 06:56

sqldeveloperでplsql(名前TEST1)で記載し、実行ボタンを押すとデスクトップにあるtest.txt(中身は123)をテーブル(TS)カラム(TS1)に保存したいです。

sql * loderは使用しません。△(実行)を押せば読み込みできるようにしたいです。
ここではファンクションで作成するとします。

create or replace function TEST1 return number is

ソースコードを教えて欲しいです。よろしくお願いします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

作成するストアドプロシージャはDBサーバーで動作するので、インポートしようとするファイルはそこから参照できる範囲に留まります。

そのファイルが、操作しているPCのデスクトップということであれば、ストアド単独では無理でしょうね。

投稿2017/10/13 07:33

sazi

総合スコア25085

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/10/13 07:51

ありがとうございます。 単独では無理ということ、理解しました。 例えばバッチファイルを使用してのインポートは可能でしょうか? 可能であればどのようなコードを記入すればよいでしょうか?
sazi

2017/10/13 08:05

バッチが可能であれば、バッチ内でSQL*Loader使用するのが一番簡単です。 環境的にどんな制約があるのか不明な状態での回答は困難です。
sazi

2017/10/13 08:10

操作するPCにoraclecliantなどのインストールが無く、アプリケーションのみで行うというなら、バッチではなく、そのアプリケーションでファイルをサーバーにアップロードするのが手っ取り早いと思います。
sazi

2017/10/13 08:11

但し、ファイルの排他などの問題は出てきますが。
退会済みユーザー

退会済みユーザー

2017/10/13 08:14

ありがとうございます。 oraclecliantインストールがないので導入してみます。 バッチ内でSQL * Loaderを使用できるのですね! 無知な質問で申し訳ありませんでした。 制約等は自分でも理解できていません、ただバッチを使用してテーブルにテキストファイル内容を保管したいとだけ考えていました。
sazi

2017/10/13 08:16

多分、現状はファイルを読むライブラリを見つけたので、ストアドでやってみたらという思いつきのレベルでしかないと推測します。 システムの方式(webアプリであるとかクライアント・サーバー方式であるとか)の前段を元に、クライアントからCSVを指定してインポートするにはどうしたら良いのかという質問をされた方が良いかと思います。
sazi

2017/10/13 08:19

コメントが前後しました。 >バッチ内でSQL * Loaderを使用できるのですね! 逆に、SQL * LoaderはOSコマンドでしか実行できません。
退会済みユーザー

退会済みユーザー

2017/10/13 08:34

はじめての業務でそのようなものがあるようなので勉強しようと行っていました。 クライアントからデータのインポートで検索し、考えてみようと思います。 何度も回答ありがとうございました!
退会済みユーザー

退会済みユーザー

2017/10/13 08:35

周りに聞ける方はいませんので質問していました。
退会済みユーザー

退会済みユーザー

2017/10/16 06:57

sql loderのバッチを作成してDBの指定テーブルにファイルを保管する事に成功しました。ありがとうございました
sazi

2017/10/16 08:18

良かったですね。お疲れ様でした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.51%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問