クラシックASPでOracleにファイル登録
ASP(非.net)でOracleにファイルを登録しようと調べたメモ。
バイナリを扱うモジュールが必要なので、
下記を参考にインストール。
http://www.hi-ho.ne.jp/babaq/basp21.html
OracleでばBLOB型のフィールドを用意。
(拡張子がわからないと復元できないのでファイル名も一緒に格納すると良いかも)
ASPのソースは以下
<% set bobj = Server.CreateObject("basp21") bytes = Request.TotalBytes ' バイト数を指定してバイナリデータ読み出し b = Request.BinaryRead(bytes) ' FormBinaryの第二引数にinput type="file"のnameを指定してデータ取得 obj = bobj.FormBinary(b, "file") filename = bobj.FormFileName(b, "file) Dim conn set conn = Server.CreateObject("ADODB.Connection") Call conn.Open("ODBC_NAME", "SCHEMA", "PASSWORD") sql = "INSERT INTO TABLE VALUES(?, ?)" ' Commandを使う set cmd = Server.CreateObject("ADODB.Command") cmd.ActiveConnection = conn cmd.CommandText = sql ' cmd.parametersでプレースホルダーに値を配置 cmd.Parameters(0).Value = filename cmd.Parameters(1).Value = obj ' sql実行 cmd.Execute set cmd = Nothing conn.Close set conn = Nothins %>