我正在尝试从oracle 11g数据库中的长原始字段中提取数据。但是,当我尝试时,我一直得到“指定演员阵容无效”:
cmd.InitialLONGFetchSize = 1000000;
cmd.AddRowid = true;
byte[] PicTempArray = new Byte[1024];
Oracle.DataAccess.Client.OracleDataReader Reader = cmd.ExecuteReader();
int i = 0;
while (Reader.Read())
{
try
{
PicTempArray[i] = Reader.GetByte(0);
}
catch
{
}
i++;
}
如果我做了一些错误的话,我不会感到惊讶。如果你没猜到LONG RAW持有一些图像数据。任何建议都表示赞赏。
答案 0 :(得分:3)
GetByte
用于从数字列中检索单个字节。
您想要GetBytes
。您可能还应该阅读documentation获取“获取长期和长期数据”。
(顺便说一下,我希望你真的没有空的catch块 - 如果你使用camelCase作为你的本地变量名你的代码会更加惯用,并缩小大括号try
和catch
块,与while
块一样。)