c# - OracleLob sql server varbinary 等效对象,用于读取 VarBinary(max) C#
问题描述
我们最近从 oracle 转移到 ms sql server,我无法从 SQL Server 读取 VarBinary(max)
甲骨文的代码是
private byte[] CallSelectBlob(string aSqlCommand)
{
byte[] result = new byte[0];
OracleCommand comm = new OracleCommand(aSqlCommand, oc);
OracleDataReader reader = comm.ExecuteReader(System.Data.CommandBehavior.Default);
while (reader.Read())
{
for (int i = 0; i < reader.FieldCount; i++)
{
string fieldName = reader.GetName(i);
OracleLob myLob = reader.GetOracleLob(i);
if (!myLob.IsNull)
{
byte[] b = new byte[myLob.Length];
myLob.Read(b, 0, Convert.ToInt32(myLob.Length));
result = b;
}
}
}
reader.Close();
return result;
}
这很好用,但是我无法找到一个可以将 OracleLob 替换为可以与 VarBinary(max) 一起使用的对象(它将用作 pdf 文件)
该函数应将其作为 byte[] 返回。
有谁知道可以实现这一目标的方法?
解决方案
推荐阅读
- mybatis - HSQL 中的条件插入失败
- objective-c - Swift 泛型有线语法确实有效,但可以用不同的方式编写吗?
- google-earth-engine - 如何从 Google Earth Engine FeatureCollection 可视化给定纬度/经度点和给定像素分辨率的值?
- mysql - MySql 访问冲突不在 YEAR MONTH 和 MAX 组中
- javascript - TypeScript - 如何使用数组映射到 ES 6 映射?
- angular6 - 我在 Angular 6 中使用 ng serve 命令运行我的新项目时遇到问题,这里附上我的问题
- javascript - javascript 新手对 Web 前端有疑问
- android - 消息加倍
- html - 在 HTML 和 CSS 中对齐 3 行
- google-cloud-firestore - 免费帐户超过 Google Firestore 配额