Oracle数据库连接 - 打开连接时出错 [英] Oracle database connection - error while opening connection
本文介绍了Oracle数据库连接 - 打开连接时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在处理批量上传功能,因为我已经使用了Oracle.DataAccess并创建了连接,直到上周它工作正常但现在我突然收到错误System.NullReferenceException:对象引用没有设置为一个实例宾语。当我尝试使用连接对象打开连接时。例如connObject.Open。我在下面复制了代码片段。
我尝试过的事情:
I am working on bulk upload functionality for that I have used Oracle.DataAccess and created connection, till last week it was working fine but now suddenly I am getting error "System.NullReferenceException: Object reference not set to an instance of an object." when i am trying to open connection using connection object. e.g. connObject.Open. I have copied code snippet below.
What I have tried:
public bool WriteToServer(string qualifiedDBName, DataTable dataTable)
{
OracleConnection objOracleCon = null;
try
{
string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["OracleConnection"].ToString();
objOracleCon = new OracleConnection(connectionString);
if (objOracleCon != null)
{
if (objOracleCon.State == ConnectionState.Closed)
{
objOracleCon.Open();
}
using (OracleBulkCopy bulkCopy = new OracleBulkCopy(objOracleCon))
{
bulkCopy.BatchSize = 100000;
bulkCopy.BulkCopyTimeout = 20000;
bulkCopy.DestinationTableName = qualifiedDBName;
bulkCopy.WriteToServer(dataTable);
bulkCopy.Close();
bulkCopy.Dispose();
objOracleCon.Dispose();
}
}
}
catch (Exception exc)
{
return false;
}
finally
{
if (objOracleCon.State == ConnectionState.Open)
{
objOracleCon.Close();
}
}
return true;
}
推荐答案
您在<$ cc上调用关闭
c $ c> objOracleConfinally
块中的对象,但您已使用$ c将此对象放在中$ c>阻止上面。
You are callingClose
on yourobjOracleCon
object in yourfinally
block, but you have disposed this object in yourusing
block above.
这篇关于Oracle数据库连接 - 打开连接时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文