1)、数据库操作首先应该是链接,链接的方式有多种,不论怎样实现最终都是把链接字符串赋值给实现了 继承自DbConnection 类的SqlConnection类实例的ConnectionString属性;

2)、链接后就是执行操作,创建继承自DbCommand类的子类对象SqlCommand,将上面创建的Connection对象传递给SqlCommand对象 ,将要执行的sql语句传递给其CommandText属性;参数利用SqlCommand对象的SqlParameterCollection类型的Parameters属
性的一系列Add或AddWithValue方法添加参数(如果是通过接口 IDbConnection、IDbCommand、IDataReader建立不同数据库的操作可以用DbProviderFactories解除依赖关系);

3)、打开连接对象;

4)、操作:

  • 使用Command对象的ExecuteNonQuery方法执增、删、改行并返回受影响行数;
  • 使用Command对象的ExecuteScalar查询单个数据
  • 查询只说DataReader,关于DataReader与DataSet的之类的东西可以搜出很多;之后使用只有一个有internal修饰的构造函数SqlDatareader(继承自DbDataReader)的实例变量接收SqlCommond对象
    ExecuteReader方法执行后返回的SqlDataReader类型的对象;最后使用循环取出DataReader中的数据;

5)、最后是关闭、销毁此次链接。

              string conStr = "server=xx;database=xx;User id=xx;pwd=xx";
SqlConnection con = new SqlConnection(conStr);
string sqlStr = "";        //SqlCommand cmd = new SqlCommand(sqlStr, con);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = sqlStr;
cmd.Parameter.Add("@",xxxx);
//cmd.Parameters.AddWithValue("@",xxxx); con.Open(); //int nums=cmd.ExecuteNonQuery();
// var value=cmd.ExecuteScalar(); SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{ }
} dr.Close();
con.Close();
con.Dispose();

DataReader读取数据速度很快,有很多条数据时对内存的影响也是很少的,只能向前读取等;对于应用程序来说数据库操作是很平常的事,尤其是数据的展示,我写的ASP.Net程序中目前的操作中读取数据基本都是DataReader,因为开始只知道使用SqlDataAdapter,自己玩什么因素都发现不了,不适用这个东西,并不是不好,使用什么还得看应用的地方和自己的爱好。

2013/12/18

ADO.NET MSSSQLServer 操作简要总结的更多相关文章

  1. Linux学习之CentOS(四)----Linux文件属性、所有者、群组、其他组及文件权限操作简要总结

    Linux文件属性.所有者.群组.其他组及文件权限操作简要总结 首先介绍一个重要的知识点:文件属性控制权限 [root@www ~]# ls -al total 156 drwxr-x--- 4 ro ...

  2. MFC中使用ADO进行数据库操作

    参考FROM:http://hi.baidu.com/sunkanghome/item/e1fda510b3186359f1090ee2 数据库与数据库编程: 当前各种主流数据库有很多,包括Oracl ...

  3. 就这么 来ADO.net类操作数据库

    使用ADO.net操作数据库其实也是很简单,而且使用频率蛮高的一种方式.话不多说,上代码才更容易理解. 首先,先要引入数据库操作相关的命名空间,这样才能使用下面的代码 //数据库连接引用的命名空间 u ...

  4. ado.net常用操作

    目录 一.ADO.NET概要 二.ADO.NET的组成 三.Connection连接对象 3.1.连接字符串 3.1.1.SQL Server连接字符串 3.1.2.Access连接字符串 3.1.3 ...

  5. 初始ADO.NET数据操作

    以下介绍直接来源与百度百科,介绍十分全面和详细,作为小菜的我们没有理由不看完这些枯燥的介绍原有: ADO.NET的名称起源于ADO(ActiveX Data Objects),是一个COM组件库,用于 ...

  6. 一种利用ADO连接池操作MySQL的解决方案(VC++)

    VC++连接MySQL数据库 常用的方式有三种:ADO.mysql++,mysql API ; 本文只讲述ADO的连接方式. 为什么要使用连接池? 对于简单的数据库应用,完全可以先创建一个常连接(此连 ...

  7. ADO.NET 一般操作(c#)

    ADO.NET五大对象:SqlConnection.SqlCommand.SqlDataReader.SqlDataAdapter .DataSet ,其中SqlDataAdapter 不建议使用 一 ...

  8. ADO.NET数据库操作助手类

    SQL语句操作增删查改助手类 using System; using System.Collections.Generic; using System.Configuration; using Sys ...

  9. ADO.NET 数据库操作类

    操作数据类 避免代码重用.造对象太多.不能分工开发 利用面向对象的方法,把数据访问的方式优化一下,利用封装类   一般封装成三个类: 1.数据连接类 提供数据连接对象 需要引用命名空间: using ...

随机推荐

  1. hadoop fs -text和hadoop fs -cat的区别(转)

    转自:https://www.jianshu.com/p/4462613d3f57

  2. R语言-饼图

    1.饼图 > browsers<-read.table("browsers.txt",header=TRUE) > browsers<-browsers[o ...

  3. Eclipse设置所有新创建文件默认格式为UTF-8

    一.为什么需要设置所有新创建文件默认格式为UTF-8 Eclipse编码默认是ISO-8859-1,不支持中文.而很多时候,我们的文件中含有中文,或者需要在创建文件时就需要是UTF-8编码格式的.在创 ...

  4. Failed to install gems via Bundler

    问题:在执行git push heroku master时,程序报错. 解决办法: 1.bundle update 2.git add . 3.git commit -m "message& ...

  5. python 获取list的下标

    print(your_list.index('your_item')) #your_list为列表名称 your_item为需要修该的数据

  6. 手机设备上touchstart与click的区别

    1.基本定义 touchstart 手指触碰开始就能触发 click 1.手指触碰 2.手指未在屏幕上移动 3.在这个dom上手指离开屏幕 4.触摸和离开屏幕之间的时间间隔较短 因此,click事件有 ...

  7. python requests库网页爬取小实例:百度/360搜索关键词提交

    百度/360搜索关键词提交全代码: #百度/360搜索关键词提交import requestskeyword='Python'try: #百度关键字 # kv={'wd':keyword} #360关 ...

  8. CentOS开机提示kernel panic - not syncing: Attempted to kill init! 解决方法

    1.重新启动linux 系统,看见如图见面迅速按E键 2.看见如图界面在按E键编辑 3.如图界面使用上下键选择第二个在按E键 4.在最后一行后面添加  enforcing=0 按回车保存退出 5.在此 ...

  9. Centos 系统swap虚拟内存添加与删除配置

    SWAP是Linux中的虚拟内存,用于扩充物理内存不足而用来存储临时数据存在的.它类似于Windows中的虚拟内存.在Windows中,只可以使用文件来当作虚拟内存.而linux可以文件或者分区来当作 ...

  10. spring微服务架构-脑图

    spring团队对新一代软件开发的思索.为什么软件开发是spring boot?为什么软件开发是spring cloud?如何使用spring cloud搭建微服务. 清晰脑图查看