首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

winform小程序向数据表插入的有关问题

2012-03-22 
winform小程序向数据表插入的问题插入的量大时,就挂掉了,1万条可以,10万条直接卡住,挂掉了以下是主要代码:

winform小程序向数据表插入的问题
插入的量大时,就挂掉了,1万条可以,10万条直接卡住,挂掉了

以下是主要代码: 怎么回事啊

C# code
public static bool OperateDatasWithTransaction(List<string> sqlList)        {             OracleConnection myConnection = new OracleConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnStrOrcl"]);            myConnection.Open();            OracleCommand myCommand = myConnection.CreateCommand();            OracleTransaction myTrans;            // Start a local transaction            myTrans = myConnection.BeginTransaction(IsolationLevel.ReadCommitted);            // Assign transaction object for a pending local transaction            myCommand.Connection = myConnection;            myCommand.Transaction = myTrans;            try            {                foreach (string item in sqlList)                {                    myCommand.CommandText = item;                    myCommand.ExecuteNonQuery();                }                myTrans.Commit();                return true;            }            catch (Exception)            {                myTrans.Rollback();                return false;            }            finally            {                myConnection.Close();            }


[解决办法]
十万条确实要运行好一会,你就是程序i++到10万也有明显的等待
[解决办法]
oracle下不知道有没有类似于sql server的bcp导入功能,如果用sql语句循环插入肯定会慢
[解决办法]
用新线程后台慢慢更新.
[解决办法]
调用十次OperateDatasWithTransaction,而不是一次完成。
[解决办法]

[解决办法]
异步,或者多线程

热点排行