c# - OracleDataReader Exception when Select a Blob type Column
问题描述
I'm attempting to retrieve an EmptyBLOB from an Oracle database to next write a byte array on that column but I keep getting an Exception Message "ORA-03135: Connection lost contact" in the oracle Data Reader when ExecuteReader. If I select any other column of the table in the statement it works fine. The oracle database is 10g 10.2.0.4.0 - 64bit and I'm using the Oracle.ManagedDataAccess as ODP for .NET
oracleConnection.Open();
OracleCommand nameFile = oracleConnection.CreateCommand();
nameFile.Connection = oracleConnection;
nameFile.Transaction = nameFile.Connection.BeginTransaction();
nameFile.CommandText = "Delete from CF2 WHERE COMPANY_EMPID_FOLIO = :pCOMPANY_EMPID_FOLIO";
nameFile.Parameters.Add("pCOMPANY_EMPID_FOLIO", OracleDbType.Varchar2, 15).Value = sFolio;
nameFile.ExecuteNonQuery();
nameFile.CommandText = "insert into CF2 (COMPANY_EMPID_FOLIO, XML_AND_PDF_ZIP, CREATED_DATE, CREATED_BY, LAST_UPDATE_DATE, LAST_UPDATE_BY) values(:pCOMPANY_EMPID_FOLIO,EMPTY_BLOB(), sysdate, :pUser, sysdate, :pUser)";
nameFile.Parameters.Add("pUser", OracleDbType.Varchar2, 10).Value = sUser;
nameFile.ExecuteNonQuery();
nameFile.Parameters.Clear();
nameFile.CommandText = "SELECT COMPANY_EMPID_FOLIO, XML_AND_PDF_ZIP FROM CF2 WHERE COMPANY_EMPID_FOLIO = :pCOMPANY_EMPID_FOLIO FOR UPDATE"; // XML_AND_PDF_ZIP is BLOP Type Column
nameFile.Parameters.Add("pCOMPANY_EMPID_FOLIO", OracleDbType.Varchar2, 15).Value = sFolio;
OracleDataReader oracleDataReader = nameFile.ExecuteReader(); //DB Lost Contact in this point if a include the blop column in the Select
OracleDataReader oracleDataReader1 = oracleDataReader;
try
{
oracleDataReader.Read();
OracleLob oracleLob = oracleDataReader.GetOracleLob(1);
oracleLob.Write(bytes, 0, (int)bytes.Length);
}
finally
{
if (oracleDataReader1 != null)
{
((IDisposable)oracleDataReader1).Dispose();
}
}
Is there something else I'm missing before the .read method ?
解决方案
推荐阅读
- powershell - 根据参数终止 PowerShell 函数的最佳方法
- python - 按钮和文字闪烁
- python - How can I mock object with nested attributes in Python?
- r - 如何根据每年每个月的每日降雨数据计算/计算极端降水事件的数量(高于“阈值”)
- ios - How to align UICollectionView cell to UICollectionView bounds
- python-2.7 - web2py 错误:需要 web2py 2.15.5 或更高版本
- javascript - 为什么这个数组不起作用映射和查找?
- java - Jersey + HK2 + 注入构造函数
- python - 如何解决:TypeError:参数 1 必须是 pygame.Surface,而不是 builtin_function_or_method
- java - 请帮我解决这个递归函数