首页 新闻 搜索 专区 学院

ADO.NET 2道题目不理解!!!!!

0
[已关闭问题]

10  参考下列C#语句:

SqlConnection Conn1 = new SqlConnection( );

Conn1.ConnectionString = "Integrated Security=SSPI; Initial

Catalog=northwind";

Conn1.Open( );

SqlConnection Conn2 = new SqlConnection( );

Conn2.ConnectionString = "Initial Catalog=northwind; Integrated

Security=SSPI";

Conn2.Open( );

请问:上述语句将创建_____个连接池来管理这些SqlConnection 对象?

A.1

B.2

C.0

正确答案:B

 

dataTable 是数据集myDataSet 中的数据表对象,有9 条记录。调用下列代码后,dataTable 中还有几条记录?

dataTable.Rows[8].Delete();

A. 9

B. 8

C. 1

D. 0

答案:A

lx0802的主页 lx0802 | 初学一级 | 园豆:150
提问于:2009-12-05 22:09
< >
分享
其他回答(2)
0

1.Conn2.ConnectionString = "Initial Catalog=northwind; Integrated

Conn1.ConnectionString = "Integrated Security=SSPI; Initial

Catalog=northwind";连接字符不一样。

ADO.NET自动将数据库连接存放在连接池中。连接池可以大大提高数据读取性能,因为不必等待建立全新的数据库连接,而可以直接利用连接池中现成的数据库连接。关闭连接时,并不是实际关闭连接,而是将连接标为未用,放在连接池中,以备下一次启用。

 

在创建一个新的数据库连接时,如果连接字符串不完全相同,将创建不同的连接池。

2.Delete()之后需要dataTable.AccepteChanges()方法确认完全删除,因为Delete()只是将相应列的状态标志为删除,还可以通过dataTable.RejectChanges()回滚,使该行取消删除。

woody.wu | 园豆:3621 (老鸟四级) | 2009-12-06 10:57
0

第一题:默认情况下一个连接字符串创建一个连接池,由于第一次使用没有关闭,所以第二次使用SqlConnection时,就会创建第二个连接池。这也是为什么连接要及时关闭,不然会抛出连接池已满的错误!

第二题:dataTable是在内存中的数据,调用row 的Delete知识改变了那一行的状态而已,并没有删除,要删除使用DataTable.Remove(DataRow)

.netlover | 园豆:207 (菜鸟二级) | 2009-12-06 11:02
0

呵呵,楼主题的问题很熟悉哦!

是微软那个MAC,MCP考证里面的题目吧,哈哈。。。。。

同意 woody.wu 的解释。

BingP | 园豆:128 (初学一级) | 2009-12-14 13:52
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册