首页 > 编程 > .NET > 正文

教学体会: ADO.NET的连接式和断开式

2024-07-10 13:02:54
字体:
来源:转载
供稿:网友

 关于ado.net的书籍和文章很多,在这里主要使用在我教学中给学生做演示的两个小例子,来比较ado.net的连接式和断开式,程序员一般不喜欢说教,下面就以代码说话:

连接式:

sqlconnection sqlconn=new sqlconnection("server=.;database=pubs;user id=sa;password=;");
sqlcommand sqlcomm=new sqlcommand("select * from authors",sqlconn);
//操作在打开和断开数据库之间
sqlconn.open();
sqldatareader dr=sqlcomm.excutereader();
while(dr.read())
{
      for  (int i=0; i<dr.fieldcount; i++)
      {
              console.write(dr.getvalue(i).tostring()+" ");
      }
      console.writeline();
}
dr.close();
sqlconn.close();

断开式

sqlconnection sqlconn=new sqlconnection("server=.;database=pubs;user id=sa;password=;");
sqldataadapter adapter=new sqldataadapter("select * from authors",sqlconn);
//用来自动生产更新命令
sqlcommandbuilder cb=new sqlcommandbuilder(adapter);
sqlconn.open();
dataset ds=new dataset();
adapter.fill(ds);
sqlconn.close();
//处理数据在打开和关闭之后
for (int i=0; i<ds.tables[0].rows.count; i++)
{
       for (int j=0; j<ds.tables[0].columns.count; j++
       {
              console.write(ds.tables[0].rows[i][j]+" ");
       }
       console.writeline();
}
//更改数据
ds.tables[0].rows[0][1]="a";
ds.tables[0].rows[1].delete();
//更新数据库
sqlconn.open();
adapter.update(ds);
sqlconn.close();


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表