C#如何存储BLOB类型的数据 我有一个数组:short[] current = new short[2500];现在想以BLOB类型将这个数组存入数据库,求解! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.developer.com/net/asp/article.php/10917_3761486_1/Working-with-Binary-Large-Objects-BLOBs-Using-SQL-Server-and-ADONET.htm 对了,说明一下,我是要存到ORACLE 10G里 将BLOB转化成base64字符,再将base64位字符转化unocde值存入到short数组中 string connString = "server=oratest;User ID=kttest;Password=test"; using(conn = new OracleConnection(connString)) { try { conn.Open(); OracleCommand cmd = conn.CreateCommand(); OracleTransaction transaction = cmd.Connection.BeginTransaction(); cmd.Transaction = transaction; cmd.CommandText = "select " + blob + " from " + tableName + " where " + id + " = " + idData + " FOR UPDATE"; OracleDataReader reader = cmd.ExecuteReader(); using(reader) { reader.Read(); OracleLob tempLob = reader.GetOracleLob(0); //写 FileStream fs = new FileStream(fileName,FileMode.Open); tempLob.BeginBatch(OracleLobOpenMode.ReadWrite); int length = 10485760; byte[] Buffer = new byte[length]; int i; while((i = fs.Read(Buffer,0,length)) > 0) { tempLob.Write(Buffer,0,i); } fs.Close(); tempLob.EndBatch(); cmd.Parameters.Clear(); } transaction.Commit(); } catch(Exception ex) { throw ex; } finally { conn.Close(); } }希望对你有帮助 可以不显示InternetDial出错时的对话框? 有人帮我解释下吗? 如何编写反病毒程序阿(C#可以么) C# HttpWebRequest 提交不上数据 急急急!!!在web页面上如何用表格动态显示数据库中读出来的数据 请教高手解决绑定问题 C#提取Word简历内的信息 有人用c# 开发过word模版吗?? 最好有示例代码啊 如何让网页上的时间不断更新? C#技术求助 谁能给我一份图书管理系统的源码呀! 我这个定时发送怎么取不到值呢?
string connString = "server=oratest;User ID=kttest;Password=test";
using(conn = new OracleConnection(connString))
{
try
{
conn.Open();
OracleCommand cmd = conn.CreateCommand(); OracleTransaction transaction = cmd.Connection.BeginTransaction();
cmd.Transaction = transaction; cmd.CommandText = "select " + blob + " from " + tableName + " where " + id + " = " + idData + " FOR UPDATE";
OracleDataReader reader = cmd.ExecuteReader();
using(reader)
{
reader.Read();
OracleLob tempLob = reader.GetOracleLob(0); //写
FileStream fs = new FileStream(fileName,FileMode.Open);
tempLob.BeginBatch(OracleLobOpenMode.ReadWrite);
int length = 10485760;
byte[] Buffer = new byte[length];
int i;
while((i = fs.Read(Buffer,0,length)) > 0)
{
tempLob.Write(Buffer,0,i);
}
fs.Close();
tempLob.EndBatch();
cmd.Parameters.Clear();
} transaction.Commit();
}
catch(Exception ex)
{
throw ex;
}
finally
{
conn.Close();
}
}
希望对你有帮助