Dim conn As New OracleConnection("server=Oracle;Uid=uid;pwd=pwd")
Dim filePath As String
Dim bigData As Byte()
Dim t As Date t = Now filePath = "C:\mytest.bmp" 'Add the path to the file you want to insert
If Not File.Exists(filePath) Then
' handle error
End If
Dim fs As Stream = _
File.OpenRead(filePath)
Dim tempBuff(fs.Length) As Byte fs.Read(tempBuff, 0, fs.Length)
fs.Close()
conn.Open() Dim tx As OracleTransaction
tx = conn.BeginTransaction() Dim cmd As New OracleCommand()
cmd = conn.CreateCommand() cmd.Transaction = tx cmd.CommandText = "declare xx blob; begin dbms_lob.createtemporary(xx, false, 0); :tempblob := xx; end;"
cmd.Parameters.Add(New OracleParameter("tempblob", OracleType.Blob)).Direction = ParameterDirection.Output
cmd.ExecuteNonQuery() Dim tempLob As OracleLob
tempLob = cmd.Parameters(0).Value
tempLob.BeginBatch(OracleLobOpenMode.ReadWrite)
tempLob.Write(tempBuff, 0, tempBuff.Length)
tempLob.EndBatch() cmd.Parameters.Clear()
cmd.CommandText = "InsertBlob.TestBlobInsert"
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New OracleParameter("BlobParam", OracleType.Blob)).Value = tempLob
Try
cmd.ExecuteNonQuery()
Catch myex As Exception
MsgBox(myex.Message)
End Try
tx.Commit()
Dim filePath As String
Dim bigData As Byte()
Dim t As Date t = Now filePath = "C:\mytest.bmp" 'Add the path to the file you want to insert
If Not File.Exists(filePath) Then
' handle error
End If
Dim fs As Stream = _
File.OpenRead(filePath)
Dim tempBuff(fs.Length) As Byte fs.Read(tempBuff, 0, fs.Length)
fs.Close()
conn.Open() Dim tx As OracleTransaction
tx = conn.BeginTransaction() Dim cmd As New OracleCommand()
cmd = conn.CreateCommand() cmd.Transaction = tx cmd.CommandText = "declare xx blob; begin dbms_lob.createtemporary(xx, false, 0); :tempblob := xx; end;"
cmd.Parameters.Add(New OracleParameter("tempblob", OracleType.Blob)).Direction = ParameterDirection.Output
cmd.ExecuteNonQuery() Dim tempLob As OracleLob
tempLob = cmd.Parameters(0).Value
tempLob.BeginBatch(OracleLobOpenMode.ReadWrite)
tempLob.Write(tempBuff, 0, tempBuff.Length)
tempLob.EndBatch() cmd.Parameters.Clear()
cmd.CommandText = "InsertBlob.TestBlobInsert"
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New OracleParameter("BlobParam", OracleType.Blob)).Value = tempLob
Try
cmd.ExecuteNonQuery()
Catch myex As Exception
MsgBox(myex.Message)
End Try
tx.Commit()
解决方案 »
- 如何在updatepanel中获取fileupload的filename属性值
- H1 动态添加问题?
- 通过内嵌iframe访问其他网站的问题
- AjaxControlToolkit使用问题
- 无法从命令行或调试器启动服务。必须首先安装windows服务(使用installutil.exe),然后用ServerExplorer、Windows...
- 如何设定datagrid的行高???
- 利用dropdownlist控件,的困惑!
- 那里可以下载vs.net2003.如果可以下载,立即给分100
- 快!快!快!web.config文件有问题!快速给分!
- 在“C:\Program Files\IIS Express\iisexpress.exe”中检测到问题。
- 救命啊~在线等。。用验证控件时候出现意想不到错误~不知道大家见过没有~
- 为什么使用文本框显示数据库的数据时仅显示一部分?
cmd.CommandText = "declare xx blob; begin dbms_lob.createtemporary(xx, false, 0); :tempblob := xx; end;"
(T-SQL语句、StoredProcedure)
string sSystype = edtSysType.KeyValue; //制度类型
string sTitle = txtTitle.Text; //标题
string sAuthor = txtAuthor.Text; //作者
string sSummary = txtSummary.Text; //主题词
string sPubDate = edtPubDate.Value; //颁布时间 //得到提交的文件
Stream fileDataStream = browse.PostedFile.InputStream;//得到文件大小
int fileLength = browse.PostedFile.ContentLength;//创建数组
byte[] fileData = new byte[fileLength];//把文件流填充到数组
fileDataStream.Read(fileData,0,fileLength);
string InsertStr = "Insert into T_TrainSafeSystem(SYSTEMTYPE,SYSTEMTITLE,AUTHOR,THEMATICWORD,PRINTSMANTIME," +
"SYSTEMCONTENT,OPERATION_DATE,OPERATOR_ID)" +
" values(?,?,?,?,?,?,sysdate,'XYM')" ;string ConnStr = ConfigurationSettings.AppSettings[0];
OleDbConnection objConn = new OleDbConnection(ConnStr);
OleDbCommand InsertCmd = new OleDbCommand(InsertStr,objConn);
InsertCmd.Parameters.Add(new OleDbParameter("@systype",OleDbType.VarChar,30,"SYSTEMTYPE"));
//制度类型
InsertCmd.Parameters["@systype"].Value = sSystype;
InsertCmd.Parameters.Add(new OleDbParameter("@title",OleDbType.VarChar,100,"SYSTEMTITLE")); //标题
InsertCmd.Parameters["@title"].Value = sTitle;
InsertCmd.Parameters.Add(new OleDbParameter("@author",OleDbType.VarChar,30,"AUTHOR")); //作者
InsertCmd.Parameters["@author"].Value = sAuthor;
InsertCmd.Parameters.Add(new OleDbParameter("@summary",OleDbType.VarChar,255,"THEMATICWORD"));
//主题
InsertCmd.Parameters["@summary"].Value = sSummary;
InsertCmd.Parameters.Add(new OleDbParameter("@pubdate",OleDbType.Date));
//颁布时间
InsertCmd.Parameters["@pubdate"].Value = DateTime.Parse(sPubDate);
InsertCmd.Parameters.Add(new OleDbParameter("@bytefile",OleDbType.VarBinary,fileLength,"SYSTEMCONTENT"));
//选择文件
InsertCmd.Parameters["@bytefile"].Value = fileData; objConn.Open();
InsertCmd.ExecuteNonQuery();编译时系统提示 语句 InsertCmd.ExecuteNonQuery(); 有错误:
ORA-03113: 通信通道的文件结束 大侠,到底错在哪里啊??
FROM Categories
WHERE CategoryID = &categoryid;