ADO.NET详细学习笔记《一》
目录
【1】ADO.NET和ADO的区别:
ADO以Recordset存储,而ADO.NET则以DataSet表示。Recordset看起来更像单表,如果让Recordset以多表的方式表示就必须在SQL中进行多表连接。反之,DataSet可以是多个表的集合。ADO 的运作是一种在线方式,这意味着不论是浏览或更新数据都必须是实时的。ADO.NET则使用离线方式,在访问数据的时候ADO.NET会利用XML制作数据的一份幅本,ADO.NET的数据库连接也只有在这段时间需要在线。
由于ADO使用COM技术,这就要求所使用的数据类型必须符合COM规范,而ADO.NET基于XML格式,数据类型更为丰富并且不需要再做COM编排导致的数据类型转换,从而提高了整体性能。
【2】ADO.NET的五大核心对象:
Connection,Command,DataAdapter,DataSet,DataReader

【3】不同命名空间下的Connection对象

【4】连接数据库的字符串,2种方式:
使用SQL 用户名和密码登录:
使用Windows身份验证登录:

【5】Command对象中的几个主要成员:
返回第一行第一列的数据,即第一个单元格的数据。
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = sql;
以上三句等价于SqlCommand cmd = new SqlCommand(sql,conn);
如果命名中要传参数SqlParameter[] pas,要在命令执行之前添加参数
if (pas!= null)
{
foreach (SqlParameter parm in pas)
cmd.Parameters.Add(parm);
}
【6】DataAdapter对象:实现查询,返回数据集。查询数据,运输数据。


填充数据的基本步骤:

例子:
public DataSet ExecuteReturnDataSet(string sql, params SqlParameter[] parms)
{
DataSet ds=new DataSet();
SqlConnection connection = new SqlConnection(ConnStr)
SqlDataAdapter adapter = new SqlDataAdapter(sql,connection);
if (parms != null&&parms.Length>)
{
foreach (SqlParameter parm in parms)
adapter.SelectCommand.Parameters.Add(parm);
}
adapter.Fill(ds);
return ds;
}
【7】DataReader(数据阅读器):一般用于读取一条数据,多条选择DataSet


DataReader对象是五大对象里面唯一不能直接NEW的对象,需要通过Command对象的ExecuteReader来创建DataReader


ADO.NET详细学习笔记《一》的更多相关文章
- Hbase技术详细学习笔记
注:转自 Hbase技术详细学习笔记 最近在逐步跟进Hbase的相关工作,由于之前对Hbase并不怎么了解,因此系统地学习了下Hbase,为了加深对Hbase的理解,对相关知识点做了笔记,并在组内进行 ...
- 基于【 MySql 】二 || mysql详细学习笔记
mysql重点学习笔记 /* Windows服务 */ -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysql ...
- ADO。net学习笔记
来源于网络 1. SqlConnection(DBConnection) 建立程序与数据库的链接 链接字符串有两种形式: //使用Windows验证 SSPI(安全支持提供程序接口) ...
- ADO.NET 基础学习笔记1
1. ODBC.OLEDB.ADO.ADO.NET之间的关系 ODBC: 开放数据库互连(ODBC)是MICROSOFT提出的数据库访问接口标准.ODBC(Open DatabaseConnectiv ...
- MySQL 详细学习笔记 转
Windows服务 -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysqld_bin_path(注意:等号与值 ...
- 一千行 MySQL 详细学习笔记
Windows服务 -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysqld_bin_path(注意:等号与值 ...
- MySQL 详细学习笔记
Windows服务 -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysqld_bin_path(注意:等号与值 ...
- stl源码剖析 详细学习笔记 set map
// // set map.cpp // 笔记 // // Created by fam on 15/3/23. // // //---------------------------15/03 ...
- stl源码剖析 详细学习笔记 RB_tree (2)
//---------------------------15/03/22---------------------------- //一直好奇KeyOfValue是什么,查了下就是一个和仿函数差不多 ...
随机推荐
- IDEA+MAVEN+testNG(reportNG)
转载:http://www.cnblogs.com/aikachin/p/7765846.html 参考: http://blog.csdn.net/langsand/article/details/ ...
- 使用zbar 解码二维码 条形码
#!/usr/bin/env python # coding: u8 import os import zbar import Image import urllib import uuid def ...
- Django——20141014深入理解Django HttpRequest HttpResponse的类和实例
深入理解Django HttpRequest HttpResponse的类和实例 了解META选项 了解中间件 理清所有模板传输模板变量的方式,并作出选择 Django模板系统:如何利用Django模 ...
- 大巧不工web前端设计修炼之道—笔记
设计原则: 深入人心的设计--别让我思考 简洁是一种文化,一种需求,一种思想 ·排版 ·字体(衬线 | | 无衬线)
- 解决Odoo访问fonts.googleapis.com导致速度慢的问题
Odoo中有些css文件引用了谷歌字体,但因为谷歌服务器被墙,导致部分页面加载受影响. 解决方法如下: 360网站卫士常用前端公共库CDN服务把谷歌字体库都存到它的CDN上了,因此我们只需把样式表中谷 ...
- js 根据身份证获取出生日期及性别
js根据身份证获取出生日期及性别 CreateTime--2017年6月2日11:45:16Author:Marydon 第一步:身份证号格式校验 /** * 身份证号格式校验 */ functi ...
- C# 获取当前路径方法(转)
C# 获取当前路径方法 //获取包含清单的已加载文件的路径或 UNC 位置. public static string sApplicationPath = Assembly.GetExecuting ...
- Java设计模式-代理模式之动态代理(附源代码分析)
Java设计模式-代理模式之动态代理(附源代码分析) 动态代理概念及类图 上一篇中介绍了静态代理,动态代理跟静态代理一个最大的差别就是:动态代理是在执行时刻动态的创建出代理类及其对象. 上篇中的静态代 ...
- ST股福音:涨停潮开始! 最全ST摘帽股汇总!
本周ST股摘帽行情提前预演,ST股上演涨停潮,部分ST股甚至出现连续涨停.云财经在三季报披露之前曾经做过一期ST股摘帽分析,在三季报正式披 露完毕后,以及部分ST公司公布了2015年年报预告,ST股能 ...
- xcode,不要将.a文件拖到xcode里
如果将.a文件拖到xcode里,它自动生成的search path是错的.导致奇怪的编译错误,非常坑.这是xcode的一个bug. 或者为了省事直接将.a拖进xcode也行,但记着去Library S ...