如何用C#从oracle中存取图片

syf2000119 2004-08-10 10:51:24
如题!!谢谢!!!
...全文
267 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
charliecy 2004-08-20
  • 打赏
  • 举报
回复
请上Oracle站点下载Oracle DataProvider for .Net。微软的oracle访问组件不稳定,尤其在Web应用中。
syf2000119 2004-08-10
  • 打赏
  • 举报
回复
感谢楼上的帮助!!!!我现在已经把图片存进oracle中,但取不出来.总报错!!!
这是我的原代码:
OleDbConnection mycon=new OleDbConnection(Base.Base.getConnectionString());
mycon.Open();
da.SelectCommand= new System.Data.OleDb.OleDbCommand("select ZDH,TH from lstowngkcx.T1 where ZDH='"+txt1.Text.Trim()+"'",mycon);
da.Fill(ds,"lstowngkcx.T1");
dv1=new System.Data.DataView(ds.Tables["lstowngkcx.T1"]);

if (dv1.Count > 0)
{

this.DR1 =this.dv1[0].Row;
if(!Information.IsDBNull(RuntimeHelpers.GetObjectValue(this.DR1["TH"])))

{
this.Response.BinaryWrite(((byte[]) this.DR1["TH"]));

}
else
{
Response.Write("暂无照片");
}
}
else
{
Response.Write("暂无照片");
}
mycon.Close();
大家帮我看看哪错了.
报错提示为:
未指定的错误发生了一个 Oracle 错误,但无法从 Oracle 中检索错误信息。数据类型不被支持。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.OleDb.OleDbException: 未指定的错误发生了一个 Oracle 错误,但无法从 Oracle 中检索错误信息。数据类型不被支持。

源错误:



行 73: da.Fill(ds,"lstowngkcx.T1");


charliecy 2004-08-10
  • 打赏
  • 举报
回复
插入图片,分两步,首先必须插入当前记录但不包括图片,然后定位到数据库中该条记录,更新图片字段,如下所示:
oracleCommand.CommandText = "SELECT image FROM table WHERE (id = :id) FOR UPDATE";
oracleCommand.Parameters.Add(new System.Data.OracleClient.OracleParameter("id", OracleType.VarChar, 16, "id"));
oracleCommand.Parameters["id"].Value = id;//your record id
OracleDataReader dataReader = oracleCommand.ExecuteReader();
while(dataReader.Read())
{
if (dataReader["image"] != DBNull.Value)
{
OracleLob mBlob = dataReader.GetOracleLob(dataReader.GetOrdinal("image"));
FileStream FStream = new FileStream
(survey_image,FileMode.Open,FileAccess.Read);
//图片最大为10k
byte[] bArr = new byte[10000];
int bArrLen = 0;
bArrLen = FStream.Read(bArr,0,10000);
mBlob.Write(bArr,0,bArrLen);
mBlob.Position = 0;
}
}
dataReader.Close();

读取参照一下就可以了
syf2000119 2004-08-10
  • 打赏
  • 举报
回复
难道没有高手了吗?请版主和各位帮帮忙.急!!!!!(可加分)谢谢!!!!!
C#程序开发范例宝典》(09章)的源码 第9章 数据库技术 355   9.1 连接Access数据库 356   实例254 连接Access数据库 356   实例255 连接加密的Access数据库 357   实例256 自动识别Access 2000数据库路径 358   实例257 连接网络上共享的Access 2000数据库 360   9.2 连接SQL Server数据库 361   实例258 使用ODBC DSN连接SQL Server数据库 361   实例259 使用ODBC非DSN连接SQL Server数据库 364   实例260 使用OLE DB连接SQL Server数据库 365   实例261 建立SQL Server数据库连接 366   9.3 连接其他数据库 367   实例262 连接Excel 367   实例263 连接Oracle数据库 368   9.4 数据库结构的读取与修改 369   实例264 读取SQL Server数据库结构 369   实例265 修改SQL Server数据库结构 372   9.5 数据录入 374   实例266 利用数据绑定控件录入数据 374   实例267 使用ADO NET对象录入数据 376   实例268 利用SQL语句录入数据 379   实例269 利用存储过程录入数据 380   9.6 图片存取技术 383   实例270 使用存取文件名的方法存取图片 383   实例271 使用ADO NET对象向SQL Server数据库存入图片 384   9.7 数据修改 387   实例272 利用数据绑定控件修改数据 387   实例273 利用数据对象修改数据 390   实例274 利用SQL语句修改数据 391   实例275 利用存储过程修改数据 393   9.8 数据保存前判断 395   实例276 判断输入数据是否符合要求 395   实例277 通过存储过程实现自动编号 398   9.9 数据删除 401   实例278 删除表格指定的记录 401   实例279 利用SQL语句删除数据 402   9.10 数据记录 403   实例280 分页显示信息 403   实例281 移动记录 404   9.11 数据维护 406   实例282 在C#分离SQL Server数据库 406   实例283 在C#附加SQL Server数据库 407   实例284 在C#附加单文件SQL Server数据库 409   9.12 数据备份恢复 410   实例285 备份SQL Server数据库 410   实例286 还原SQL Server数据库 413   9.13 管理系统开发相关 415   实例287 开启SQL Server数据库 415   实例288 断开SQL Server数据库与其他应用程序的连接 417   实例289 带图像列表的系统登录程序 419   实例290 利用SQL语句执行外围命令 420   实例291 系统初始化 421

62,050

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧