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. POJ 1564(HDU 1258 ZOJ 1711) Sum It Up(DFS)

    题目链接:http://poj.org/problem?id=1564 题目大意:给定一个整数t,和n个元素组成的集合.求能否用该集合中的元素和表示该整数,如果可以输出所有可行解.1<=n< ...

  2. LCS最长公共子序列HDU1159

    最近一直在学习算法,基本上都是在学习动态规划以及字符串.当然,两者交集最经典之一则是LCS问题. 首先LCS的问题基本上就是在字符串a,b之间找到最长的公共子序列,比如 YAOLONGBLOG 和 Y ...

  3. sublime text 自动保存

    perferences->Settings - User添加下面两句话: { "save_on_focus_lost": true, "atomic_save&qu ...

  4. PHP代码分离

    所谓的代码分离 其实只是一种思路,既然是一种思路 那就意味着他是有需求的 没有需求就没有解决方案 没有方案就不存在思路. 在这之前,我们制作 PHP 程序页面的时候.都是 HTML 和 PHP 混合写 ...

  5. "git add -A" is equivalent to "git add .; git add -u".

    git add -A stages All git add . stages new and modified, without deleted git add -u stages modified ...

  6. 配置SHH集群

    ==特别要注意当前用户的问题== 1. 修改路由信息 vi /etc/hosts 10.211.55.15 hmaster1 10.211.55.16 hmaster2 10.211.55.17 hs ...

  7. uboot环境变量初始化

    一.环境变量概述 1.环境变量的概念 可以理解为用户对软件的全局配置信息,这部分信息应该可以从永久性存储器上读取,能被查询,能被修改. 启动过程中,应该首先把环境变量读取到合适的内存区域,然后利用环境 ...

  8. 关于一个简单面试题(。net)

    猫大叫一声,主人被惊醒,所有的小老鼠开始逃窜. 期初想到的是事件调用方法. 在猫叫的事件中调用一对方法就可以了. 但是,当事件很多的时候 难保大家写着写着就忘记了. 总不能有 10000个人的时候调用 ...

  9. 关于android app两次点击返回键退出的处理

    现在的android app在开发时,引入了两次点击返回键退出app的设计 为了避免用户误触,这个设计很人性化 中文网上社区有些同学贴了一些实现的例子,我觉得不是很好 代码如下 public bool ...

  10. Contest20140705 testB DP

    testB 输入文件: testB.in 输出文件testB.out 时限2000ms 问题描述: 方师傅有两个由数字组成的串 a1,a2,⋯,an 和 b1,b2,⋯,bm.有一天,方师傅感到十分无 ...