• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:oracle関数の質問)

Oracle関数でC:¥tempディレクトリのエクセルファイルをバイナリデータとしてテーブルにINSERTする方法

このQ&Aのポイント
  • Oracle関数を使用して、C:¥tempディレクトリにあるエクセルファイルのバイナリデータをテーブルにINSERTする方法についての質問です。
  • DBMS_LOB.FILEOPENでディレクトリもしくはファイルが存在しないためエラーが発生しています。ディレクトリとファイル名は正しく設定されており、ディレクトリオブジェクトの値も確認しましたが、他に原因がわかりません。
  • また、DBMS_LOB.FILEOPEN関数とBFILENAME関数で正しいパラメータを指定する方法について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • nora1962
  • ベストアンサー率60% (431/717)
回答No.1

CREATE DIRECTORY でディレクトリを作成し、GRANTで読み込み権限をユーザーに付与していれば、ディレクトリ名は大文字で格納されているではないでしょうか。 後、CREATE DIRECTORY で作成したのならディレクトリの指定は作成した名前で行います(実ディレクトリィではなく) バイナリファイルをテーブルに格納する例が下記のURLにありました。参考にしてみてください。 http://www.atmarkit.co.jp/fdb/rensai/sqlclinic07/sqlclinic07_1.html

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • FileOpen 関数で既にファイルが開かれている場合

    よろしくお願いします。 VB.net で開発しているのですが、 FileOpen関数を使って、READONLYでファイルを開きたいのですが 既に開かれている場合、異常終了してしまいます。 他で開かれていても、読み込みだけをする方法はないでしょうか? ちなみに下記を試したのですが落ちてしまいました。 FileOpen(Number, 対象ファイル, OpenMode.Input) FileOpen(Number, 対象ファイル, OpenAccess.Read) FileOpen(Number, 対象ファイル, OpenMode.Input, OpenAccess.Read)

  • コマンド名でのワイルドカード指定

    "test 1"ディレクトリ内にある全てのファイルを test2 ディレクトリに移したい場合、 どのようなコマンドを実行すれば良いのでしょうか? MOVE "test 1"\* test2 でも MOVE test 1\* test2 でもエラーになってしまいます。 ちなみに、実際にはバッチスクリプトになっていて、test 1の部分は変数になっています。 MOVE %SRC%\* %DST% %SRC%にスペースを含むディレクトリ名を指定するとエラーになってしまいます。。

  • 関数の戻り値について

    ----test.c----------------- id="0001"; number = get_data(id); /* 関数の戻り値を取得したい */ if(strcmp(number, "01") == 0){ /* Aの処理へ */ }else{ /* Bの処理へ */ } ----test.pc---------------- int get_data(char* id){ EXEC SQL BEGIN DECLARE SECTION; VARCHAR tel_no[3]; VARCHAR id_no[5]; EXEC SQL END DECLARE SECTION; strcpy(id_no.arr,id); id_no.len=strlen(id_no.arr); EXEC SQL SELECT tel_number into :tel_no FROM test_tbl WHERE id=:id_no; tel_no.arr[tel_no.len]='\0'; /*取得したtel_noを返したい!!*/ } --------------------------- test.cで引数に"0001"を指定して、get_data関数を コールして、そのget_data関数で受け取った引数で test_tblを検索しtel_numberフィールドの値を test.cに返し、判断文で処理したいと考えています。 ちなみにtest_tblで引数の条件で合致するデータは 必ず1件のみとします。 どのように記述したらいいかわかりません。 アドバイスお願い致します。m(_ _)m

  • makefile でファイルをコピーする方法

    makefileであるディレクトリ(SRC_DIR)以下のファイル(ディレクトリ)のうち「CVS」以外を、別のディレクトリ(DST_DIR)へコピーしたいのですが、どのように記述したらよいのでしょうか? 記述例(途中): SRC_DIR = ./src DST_DIR = ./dst FILES = $(shell ls $(SRC_DIR)); FILES_TO_REMOVE = CVS FILES_TO_COPY = $(filter-out $(FILES_TO_REMOVE), $(FILES)); # ↑ ここまでで、コピーすべきファイルのリストが作成できた # ↓ ここからどのように記述したらいいか? all:     

  • CRLFをLFに変換したい

    テキストファイルを 1)SJIS → UTF-8 2)CRLF → LF に変換させたいのですが、1)はうまく出来たのですが、 2)がうまくいかず困っています Set Src = CreateObject("ADODB.Stream") Src.Open Src.Type = 2 Src.Charset = "Shift_JIS" Src.LoadFromFile "test.txt" Set Dst = CreateObject("ADODB.Stream") Dst.Open Dst.Type = 2 Dst.Charset = "UTF-8" Dst.LineSeparator=10 Src.CopyTo Dst Src.Close Dst.SaveToFile "utf-out.txt", 2 Dst.Close 改行コードが何も変化しません。 どうすればよいか教えてください。 ADODBではじめからファイルに書き込んでいく方法でもかまいません。

  • BCCデベロッパーでiconv

    c言語でのプログラミングをBCC developer(windowsXP)で行ってるものです。 iconv.hとインクルードしたくて C:\Borland\BCC55\Include ファイルにlibiconv-1.9.1.bin.woe32にあるincludeファイルにあった iconv.h libcharset.h localcharset.h という三つのファイルをコピペした後、次のプログラムをmakeしてみました #include <stdio.h> #include <stdlib.h> #include <string.h> #include <iconv.h> #define S_SIZE (1024) int main(void) { iconv_t icd; FILE *fp_src, *fp_dst; char s_src[S_SIZE], s_dst[S_SIZE]; char *p_src, *p_dst; size_t n_src, n_dst; icd = iconv_open("EUC-JP", "UTF-8"); fp_src = fopen("index1.txt", "r"); fp_dst = fopen("index2.txt", "w"); while(fgets(s_src, S_SIZE, fp_src) != NULL){ p_src = s_src; p_dst = s_dst; n_src = strlen(s_src); n_dst = S_SIZE-1; while(0 < n_src){ iconv(icd, &p_src, &n_src, &p_dst, &n_dst); } *p_dst = '\0'; fputs(s_dst, fp_dst); } fclose(fp_dst); fclose(fp_src); iconv_close(icd); } すると次のエラーメッセージが出ました。 Error: Unresolved external '_libiconv_open' referenced from C:\BORLAND\BCC55\BIN\TEST.C\DEBUG\TEST.OBJ Error: Unresolved external '_libiconv' referenced from C:\BORLAND\BCC55\BIN\TEST.C\DEBUG\TEST.OBJ Error: Unresolved external '_libiconv_close' referenced from C:\BORLAND\BCC55\BIN\TEST.C\DEBUG\TEST.OBJ ** error 1 ** deleting Debug\test.c.exe 解決策が分かる方、ご指導お願いいたします。

  • imagecreatetruecolor()関数でのエラー

    imagecreatetruecolor()関数を使用するのですが どうしてもエラーが起きてしまい、使用できません。 そのソースですが $img1tmp = $_FILES['img1']['tmp_name']; list($width,$height)=getimagesize($img1tmp); header ("Content-type: image/jpeg"); $src=@imagecreatefromjpeg($img1tmp); $dst=@imagecreatetruecolor($cwidht1,$cheight1) or die ("Cannot Initialize new GD image stream"); imagecopyresized($dst,$src,0,0,0,0,$cwidth1,$cheight1,$width,$height); $boRtn1=imagejpeg($dst,「保存場所.ファイル名」); となってます。 各変数には、ちゃんと数値等は指定されています。 GDライブラリも問題なくインストールされているのですがimagecreatetruecolor()関数が動かず、上記で指定しているCannot Initialize new GD image streamが 表示されてしまいます。 どうぞ、よろしくお願い致します。

    • 締切済み
    • PHP
  • ロックしたディレクトリが消えない(?)

    flock関数を使い、 $lockfile="./lock/lock.loc"; sub lock { foreach $i (1..6) { . . . if(open(LOCK,">$lockfile")){ if (flock(LOCK,6)) { $lock_flag = 1; last ; } } . . . } } という風にし、メインルーチンで&lockを実行し、ファイルロックしたのですが、flock(LOCK, 8)を使い忘れ、あとでFFFTPを使ってこれを消そうとしても、なにやらディレクトリが永遠に続いている感じになってしまい消せません。 /lock/lock.loc/lock.loc/lock.loc/lock.loc/lock.loc/... という風になっています。 それと元からlock/lock.locというディレクトリが存在したままflockを使ってしまったかどうかはちょっと確認していなかったのですが、使う前にあったとしたらlock.locはファイルではなく、ディレクトリです。 (mrdirを使ったロックなどをいろいろ試していたためです。) うまく説明できなかったのですが、どうすればこれは消せますか?後でflock(LOCK, 8)をやっても直りません・・ アップしたサーバーは@niftyです

    • ベストアンサー
    • Perl
  • OFFSET関数の基準セルの指定の仕方を工夫したい

    OFFSET関数を上手く使いこなすテクニックを教えて下さい。画像を添付します。 OFFSET関数を使って別のExcelファイルからデータを取ってくる方法を教えて下さい。 【前置き】 この添付ファイルとは別に「Aマンション家賃データ.xlsx」というファイルが存在し、その中に各個人に割り当てたID(H1,H2,H3,・・・)の名前のシートがある。 添付ファイルのセルE7を見ていただければ分かるように、「Aマンション家賃データ」ファイルのSheet H4からデータを取ってきているのがわかりますが、この数式の基準値を指定している部分の「H4」をその行の一番左側のセルA7の値から取ってくることはできないでしょうか?  なんか上手くいきません。どうか教えて下さい。よろしくお願いします。OFFSET関数でなくても構いません。

  • WIXでの複数ファイルインストール指定の方法

    WIXを使って複数のファイルをインストールするmsiを開発 しようとするのですが以下の様にすると エラーが出てしまいます。 1つのファイルをインストールするのは成功しているのですが それを複数ファイルインストールにしたとたんに どのように記述したらいいのかわからなくなってしまいました。 *Ref http://codezine.jp/article/detail/507 <?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Product Id="B6A98E5F-D6A7-46FB-9E9D-1F7BF443491C" Name="test" Version="1.00.0000" Manufacturer="author" Language="1041" Codepage="932"> <Package Id="????????-????-????-????-????????????" Description="test" Comments="test" InstallerVersion="200" Platforms="Intel" Manufacturer="author" Keywords="Installer,MSI,Database" Languages="1041" SummaryCodepage="932"/> <!-- ここから追加 --> <Media Id="1" Cabinet="Product.cab" EmbedCab="yes" /> <Directory Id="TARGETDIR" Name="SourceDir"> <Directory Id="ProgramFilesFolder"> <Directory Id="test" Name="test"> <Directory Id="INSTALLLOCATION" Name="test"> <Component Id="Component1" Guid="960E5941-FE2A-4384-A96F-8AED231DB301"> <File Id="File1" Name="XPS.exe" KeyPath="yes" Compressed="yes" DiskId="1" Source="release\XPS.exe"/> </Component> </Directory> </Directory> </Directory> </Directory> <Directory Id="TARGETDIR" Name="SourceDir"> <Directory Id="ProgramFilesFolder"> <Directory Id="test" Name="test"> <Directory Id="INSTALLLOCATION" Name="test"> <Component Id="Component1" Guid="960E5941-FE2A-4384-A96F-8AED231DB302"> <File Id="File2" Name="XPS7.dll" KeyPath="yes" Compressed="yes" DiskId="2" Source="release\XPS7.dll"/> </Component> </Directory> </Directory> </Directory> </Directory> <Feature Id="Feature1" Level="1"> <ComponentRef Id="Component1" /> </Feature> <!-- ここまで追加 --> </Product> </Wix> どの様に記述すればエラーがでなくなるというか どのように指定すれば複数のファイルをインストールできる のかご教授願いますm(___)m