我发现在写数据操作类的时候,connection的对象不是总在执行前打开的,例如:
//第一种情况
SqlConnection conn = new Connection(conStr);
SqlCommand comm = new SqlCommand(sql,comm);
conn.open();
comm.ExecuteNonQuery();
//第二种情况
SqlConnection conn = new Connection(conStr);
conn.Open();
SqlCommand comm = new SqlCommand();
comm.Connection = conn;
SqlTransaction trans = conn.BeginTransaction();
comm.Transaction = trans;
第一种Open的方式比第二种好,首先第一种Open采用的是最晚Open的方式,一旦Open之后马上执行SQL命令。而第二种方式,Open了之后才去初始化SqlCommand对象,如果初始化SqlCommand对象的过程中抛异常了,而你这个SqlConnection对象却已经打开很长时间了,一直无法执行SQL命令,这无形中就浪费了资源。
当你进行数据库访问的时候open,用完之后记得close。这样会大大的提高效率。
在你写的这两个方式的代码中没什么区别,毕竟没有多长时间的闲置,只要记得打开、关闭的基本流程正确就行了,推荐第一种