设置oracle中的blob字段,将xml文件写入到数据库中
2008-11-25 21:20
531 查看
http://hi.baidu.com/net1979/blog/item/1829e14ee7d26c0db2de0569.html可以将二进制大对象 (BLOB) 作为二进制或字符数据写入数据库,具体视数据源的字段类型而定。若要将 BLOB
值写入数据库,请发出相应的 INSERT 或 UPDATE 语句并将 BLOB 值作为输入参数传递如果 BLOB 存储为文本格式(如 SQL Server
text 字段),则可将 BLOB 作为字符串参数传递。如果 BLOB 存储为二进制格式(如 SQL Server image 字段),则可将类型 byte
的数组作为二进制参数传递。
/// <summary>
/// 设置BLOB
///
</summary>
/// <param
name="inst_id">实例编号</param>
/// <param
name="xmlFrom">xml文件</param>
private void setBlob(string
inst_id,XmlDocument xmlFrom)
{
//将xmld存入流程实例表
OracleConnection con = GenericClassOra.connect();
//连接数据库,自已写的方法
//页面要设置成gb2312:
ResponseEncoding="gb2312",根据情况,如果你的是utf-8
byte[] ddd =
System.Text.Encoding.Default.GetBytes(xmlFrom.InnerXml);
//这是要更新哪一条的SQL语句
string strSQL = "update 表名set blob字段名=:ddd where
id='" + inst_id + "'";
try
{
con.Open();
OracleCommand comd = new OracleCommand(strSQL,
con);
comd.CommandType =
CommandType.Text;
comd.CommandText = strSQL;
comd.Parameters.Add("ddd", System.Data.OracleClient.OracleType.Blob).Value =
ddd;
comd.ExecuteNonQuery();
}
catch(Exception ex)
{
throw ex;
}
finally
{
if (con.State ==
ConnectionState.Open)
{
con.Close();
}
}
}
值写入数据库,请发出相应的 INSERT 或 UPDATE 语句并将 BLOB 值作为输入参数传递如果 BLOB 存储为文本格式(如 SQL Server
text 字段),则可将 BLOB 作为字符串参数传递。如果 BLOB 存储为二进制格式(如 SQL Server image 字段),则可将类型 byte
的数组作为二进制参数传递。
注意 |
---|
BLOB 可能相当大,因此在作为单个值写入时可能要使用大量的系统内存,从而降低应用程序的性能。若要减少写入 BLOB 值时所使用的内存量,可以按“块”将 BLOB 写入数据库。我这里只是把xml文件一次性存进数据库,没有分块,因为我用的xml文件不是很大。 |
/// 设置BLOB
///
</summary>
/// <param
name="inst_id">实例编号</param>
/// <param
name="xmlFrom">xml文件</param>
private void setBlob(string
inst_id,XmlDocument xmlFrom)
{
//将xmld存入流程实例表
OracleConnection con = GenericClassOra.connect();
//连接数据库,自已写的方法
//页面要设置成gb2312:
ResponseEncoding="gb2312",根据情况,如果你的是utf-8
byte[] ddd =
System.Text.Encoding.Default.GetBytes(xmlFrom.InnerXml);
//这是要更新哪一条的SQL语句
string strSQL = "update 表名set blob字段名=:ddd where
id='" + inst_id + "'";
try
{
con.Open();
OracleCommand comd = new OracleCommand(strSQL,
con);
comd.CommandType =
CommandType.Text;
comd.CommandText = strSQL;
comd.Parameters.Add("ddd", System.Data.OracleClient.OracleType.Blob).Value =
ddd;
comd.ExecuteNonQuery();
}
catch(Exception ex)
{
throw ex;
}
finally
{
if (con.State ==
ConnectionState.Open)
{
con.Close();
}
}
}
相关文章推荐
- 将oracle中blob数据写入文件,再把文件读取插入数据库
- JAVA通过Hibernate将文件写入ORACLE数据的BLOB字段 代码示例
- [转贴]Java中操作数据库的Blob字段,将文件写入数据库!!!
- 把System.byte[]类型数据写入Oracle的blob类型字段中
- 如何在oracle的blob字段里保存多个文件
- 如何读取Oracle的BLOB字段里的文件
- Oracle中Blob字段的写入处理(一)
- 设置Log4j 的properties文件,将日志写入数据库
- c++写入oracle数据库blob字段,读取blob到本地文件
- C#.net向oracle的blob字段插入文件
- 数据库中的BLOB字段--存图片等文件
- 使用SSH在做插入和修改的时候即使数据库中给字段设置了默认值还是没有用,在表对应的配置文件中也不知道该如何配置。。请教下。。
- 向oracle的blob字段导入文件
- C#写入和读取数据库blob字段代码
- JDBC在Tomcat中配置数据库(MSSQL和ORACLE)连接池的配置文件(server.xml)
- Oracle--将文件内容写入数据库
- 如何在oracle的blob字段里保存多个文件
- Oracle如何通过Database Link复制远程数据库表的CLOB/BLOB字段数据到本地数据库?
- C#环境下往oracle中的blob字段插入文件
- 根据标题后缀名传参点击下载保存内容为任意格式文件(内容为oracle库中某字段值:BLOB类型)