我有下面的代码试图做从Oracle到SQL Server 2005的批量复制,并保持超时。我如何扩展oracle连接超时?看来我不能从我在网上阅读的东西中获得。.net应用程序的oracle连接超时
OracleConnection source = new OracleConnection(GetOracleConnectionString());
source.Open();
SqlConnection dest = new SqlConnection(GetSQLConnectionString());
dest.Open();
OracleCommand sourceCommand = new OracleCommand(@"select * from table");
using (OracleDataReader dr = sourceCommand.ExecuteReader())
{
using (SqlBulkCopy s = new SqlBulkCopy(dest))
{
s.DestinationTableName = "Defects";
s.NotifyAfter = 100;
s.SqlRowsCopied += new SqlRowsCopiedEventHandler(s_SqlRowsCopied);
s.WriteToServer(dr);
s.Close();
}
}
source.Close();
dest.Close();
这里是我的Oracle连接字符串:
return "User Id=USER;Password=pass;Data Source=(DESCRIPTION=" +
"(ADDRESS=(PROTOCOL=TCP)(HOST=14.12.7.2)(PORT=1139))" +
"(CONNECT_DATA=(SID=QCTRP1)));";
它不在预算中,并且只有20,000条记录。我希望成为一名优秀的公民,并且不会超过所需的资源锁定 – kacalapy 2010-12-15 18:57:57
是否有免费的ETL工具可用于将ORACLE数据导入SQL,并计划每天定期运行这些工具? – kacalapy 2010-12-15 18:58:49
我的头脑里没有任何建议,但谷歌搜索“free etl”返回了一些有希望的结果。大多数ETL工具都与数据库无关(或至少支持Oracle和SQL Server)。 – 2010-12-15 19:01:05