ADO.NET包括多个对象模型,有Connection/Command/DataReader/DataAdapter/DataSet/DataTable/DataView等。

命名空间System.Data.SqlClient      用于SQL SERVER数据库

命名空间System.Data.Odbc

命名空间System.Data.OracleClient  用于Oracle数据库

Connection对象

用于连接到数据库和管理对数据库的事务。

连接的串一般是:

connectionString="Data Source=;
Initial Catalog=;
Integrated Security=false;
User ID=;
password="
常用方法:
open();
close();
dispose();//释放由Connection使用的所有资源。
 
Command对象
 
用来对数据源执行CRUD等操作,也可以是存储过程。
  
常用方法:
executeNonQuery();执行非select的命令,返回所影响的行数
executeScalar();执行select,返回第一行第一列的值。count/sum等集函数
executeReader();执行select,返回dataReader对象。
 
DataReader对象

使用时始终用sqlconnection在线操作数据库,每次在内存中加载一条数据,开销很小

常用方法:

read();

NextResult();

close();不使用时关闭它

DataAdapter对象在DataSet和实际数据源之间的桥梁,专门为DataSet所服务。

两种工作步骤:

1:通过Command对象执行sql语句从数据源中检索数据,将检索的数据填充到DataSet表中

2:把用户对dataset对象做出的更改填写到数据源中

常用方法:

fill();//从数据源中提取数据以填充数据集

update();更新数据源

常用属性:

SelectCommand();

InsertCommand();

UpdateCommand();

DeletCommand();

DataSet对象

创建在内存中的集合对象,使用必须设置主键

DataTable对象用于表示DataSet中的表

DataView对象

用于排序/筛选/搜索/编辑和导航

 
第一种:
String connectionString="";
SqlConnection con = new SqlConnection(connectionString);
con.open();
SqlCommand cmd = new SqlCommand("select/等CRUD语句....";con);
SqlDataReader reader = cmd.ExecuteReader();
 
while(reader.Reader()){
Response.Write(reader["列名"]);
.....
 
}
reader.close();
con.close();
 
展示可以借用GirdView实现:
GirdView.DataSource=reader;
GirdView.DataBind();
 
第二种:
String connectionString="";
SqlConnection con = new SqlConnection(connectionString);

con.open();

SqlDataAdapter da = new SqlDataAdapter("CRUD语句",con);
DataSet ds = new DataSet();
da.Fill(ds);
 
或
String connectionString="";
SqlConnection con = new SqlConnection(connectionString);

con.open();

SqlCommand cmd = new SqlCommand("select/等CRUD语句....";con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
 
或
String connectionString="";
SqlConnection con = new SqlConnection(connectionString);

con.open();

SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand("select/等CRUD语句....";con);
DataSet ds = new DataSet();
da.Fill(ds);
 
GirdView.DataSource = ds;
GirdView.DataBind();
 
 
 
 
 

C#开发学习——ADO.NET几个重要对象的更多相关文章

  1. 吴裕雄--天生自然 JAVASCRIPT开发学习:Math(算数) 对象

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  2. 吴裕雄--天生自然 JAVASCRIPT开发学习:Array(数组) 对象

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. 吴裕雄--天生自然 JAVASCRIPT开发学习:Date(日期) 对象

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. .net 网站开发学习资源

    慕课网 前端基础学习 http://www.imooc.com/course/list?c=fe 了解需求 例子之一 http://wenku.it168.com/d_000517899.shtml ...

  5. 第15课-数据库开发及ado.net-数据库介绍,主键,外键,启动数据库,数据库身份验证方式,建表,分离数据库

    第15课-数据库开发及ado.net 数据库介绍,主键,外键,启动数据库,数据库身份验证方式,建表,分离数据库 1.  学习方法 2.  多涨见识 3.  比自己强的人一起,学习更强:比自己更聪明的人 ...

  6. delphi开发学习四:TClientDataSet与TDataSetProvider控件使用实例

    1.TClientDataSet控件 通过TClientDataSet控件可以建立瘦客户端的应用程序,且数据执行效率较高,但它不能和数据库自动连接,程序中必须制定它如何获取数据.一般情况下,TClie ...

  7. Android开发学习之路-RecyclerView滑动删除和拖动排序

    Android开发学习之路-RecyclerView使用初探 Android开发学习之路-RecyclerView的Item自定义动画及DefaultItemAnimator源码分析 Android开 ...

  8. web前端开发学习内容

    应该 具备的 知识技能 :懂web标准,熟练手写 xhtml css3 并符合 符合w3c标准                       代码能 兼容主流浏览器.ie6.7.8.9 ff 等.    ...

  9. Android开发学习路线图

    Android开发学习方法: Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内容跨度也比较大.因此,一个好的学习方法对我们学习Android开发很重要. 在此建议, ...

随机推荐

  1. 【BZOJ1875】【矩阵乘法】[SDOI2009]HH去散步

    Description HH有个一成不变的习惯,喜欢饭后百步走.所谓百步走,就是散步,就是在一定的时间 内,走过一定的距离. 但是同时HH又是个喜欢变化的人,所以他不会立刻沿着刚刚走来的路走回. 又因 ...

  2. 【实习记】2014-08-24实习生无法映射磁盘替代方案rsync+非默认端口22设置

    正职开发人员有两个电脑,一个办公网的,一个开发网的.通过samba服务在开发网机器上映射编译环境机的磁盘没有问题. 开发岗实习生使用虚拟机做跳板方式登录编译环境机.上面的方法不能用. 替代方法:rsy ...

  3. 不为人知的Locked

    在属性面板上,有一个Locked属性,什么时候添加上去的,真是没有注意到,它的说明为:确定是否可以移动控件或调整控件的大小,默认是为false的,设置为true以后,当前选中的控件会在左上角出现一个锁 ...

  4. runas /user:administrator cmd 以管理员身份运行CMD

    runas /user:administrator cmd 以管理员身份运行CMD 1.windows+r打开 2.然后根据提示输入密码

  5. 移动端利用iscroll实现小图变大图

    大图界面,使用iscroll,定义如下: var myScroll; function loaded(){ myScroll = new iScroll('wrapper', { zoom:true, ...

  6. MyISAM 和 InnoDB 讲解[转]

    MyISAM 和 InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定.基本的差别为:MyISAM类型不支持事务处理等高级处 ...

  7. CSS样式的优先级

    1.相同权值情况下,CSS样式的优先级总结来说,就是--就近原则(离被设置元素越近优先级别越高): 内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中). 2.权 ...

  8. 4d tensor

    偶然在一个ppt中看到了如下关于tensor的解释,清晰明白,所以post在这里,以备后续查看 根据这个理解: theano中的input(4d tensor):[mini-batch size, n ...

  9. List Of All Machine Learning Sorted By Citation

    List Of All Machine Learning Sorted By Citation With > 300 citations 2013-10-10 See Citation Anal ...

  10. 【JavsScript】XMLHttpRequest2的进步之处

    本文参考自:XMLHttpRequest2 新技巧 (重点保留demo,方便自己日后查阅) HTML5是现在web开发中的热点,虽然关于web app和local app一直有争论,但是从技术学习的角 ...