C# ADO.NET学习
Connetction 对象:
数据库服务器
数据库名字
登录名、密码
连接数据库所需要的其他参数
Command对象:
ExecuteScalar();//首行首列的内容
ExecuteNomQuery();//几行数据收到影响
ExecuteReader();//数据流
DataReader对象:
一个只读只进的数据流。
需要时刻与远程服务器保持连接。将远程的数据通过流的方式单项传输给客户端,他是只读只进的。
DataSet:
一个存在与本地内存中的微型数据库
一次从数据源获取数据到本地,并在本地内存建立一个微型的数据库存储,期间可断开与服务器的连接,
以后的操作都可以针对本地数据操作,结果后通过DataAdopter一次更新到远程服务器的数据库
DataAdapter:
数据适配器,同过断开模式,协助DataSet实现数据的获取和更新
命名空间与DataProvider
Systerm.Data 所有的一般数据访问类
System.Data.Common 各个数据提供程序共享(或重写)的类
System.Data.ProviderBase 新的基类和连接类
System.Data.SqlTypes Sql Server数据类型
System.Data.Sql Sql Server数据访问的通用新借口和类
System.Data.SqlClient 提供对Microsoft SQL Server 7.0或者更高版本中数据的访问
System.Data.OleDb 提供对使用个OLEDB公开的数据源中的数据的访问
System.Data.Odbc 提供对使用ODBC公开的数据源中数据的访问
System.Data.OracleClient 提供对Oracle 8.1.7或者更高的版本数据的访问
数据库特定的类
SqlCommand SQL语句的包装器或存储过程的调用
SqlConnection 数据库连接,类似于ADO Connection
SqlDataAdapter 用于存储选择、插入、更新和删除语句的类,因此可以用于生成DataSet和更新数据库
SqlDataReader 只读,只进、持续连接数据库的读取器
SqlParameter 为存储过程定义参数
SqlTransaction 数据库事务处理,包装在一个对象中
使用using关键字
SqlConnection conn4;
using(conn4 = new SqlConnection(constr))
{
MessageBox(conn4.State.ToString());
conn4.Open();
MessageBox(conn4.State.ToString());
}
MessageBox(conn4.State.ToString());
使用try关键字
try
{
conn1.Open();
}
catch (System.Exception ex)
{ }
finally
{
conn1.Close();
}
命令Command
string sql = "select * from product";
conn1.Open();
//方法1
SqlCommand cmd = new SqlCommand(sql, conn1);
//方法2
SqlCommand cmd1 = new SqlCommand();
cmd1.CommandText = sql;
cmd1.Connection = conn1;
//方法3
using (SqlCommand cmd2 = new SqlCommand(sql, conn1))
{ }
操作Access数据库
//绝对路径
Provider = Microsoft.Jet.OLEDB.4.0;Data Source = F:\OneDb.accdb;
//相对路径
Provider = Microsoft.Jet.OLEDB.4.0;Data Source = |DataDirectory|\OneDb.accdb;
//连接Excel
Provider = Microsoft.Jet.OLEDB.4.0;Data Source = |DataDirectory|\MyExcel.xls;Extended Properties=""Excel8.;HDR=Yes;IMEX=""
C# ADO.NET学习的更多相关文章
- ADO.NET 学习笔记 入门教程
本文转载自:http://www.youarebug.com/forum.php?mod=viewthread&tid=57&page=1&extra=#pid63 这是本人在 ...
- ADO.NET学习小结【1】正在更新...
小弟正在学习ADO.net有误的地方还请大大们批评指出,小弟在此谢过了 一.ADO.net简述: 以前我们写程序尤其是写和数据库有关的应用程序时,你我都得要了解Microsoft ADO COM对象才 ...
- ADO.NET学习心得《一》
大家好,我是代号六零一,很高兴又开始重启博客了,为了更好的加深自己的记忆和复习,今天开始坚持写写心得体会,刚开始学习ADO.NET的时候也是一脸懵逼的,代码只有动手敲打才会知道其实并不难,只要多敲几遍 ...
- ADO.NET学习
ADO.NET重要的类 在.NET访问MySql数据库时的几点经验! string connstr=Setting.Instance().GetConnectionString("MySql ...
- ADO.NET学习系列(四)---窗体版的登录小程序
1.需求分析:做一个登录的小程序,基于Winform的窗体小程序.基本要求:登录成功:弹框显示登录成功,登录失败就弹框显示失败. 扩展功能:登录次数超过3次,就”锁定“用户,提示登录错误次数过多,不能 ...
- ADO.NET学习系列(二)
这次我使用ADO.NET来插入一条数据,到数据库中.主用到存储过程.我不想每次都是用SQL文本的形式了,那样始终没有进步--- 下面首先,我把我这次练习要用到的数据库脚本,贴出来: USE maste ...
- ADO.NET学习系列(一)
一.ADO.NET基础 程序和数据库交互,要通过ADO.NET进行:通过ADO.NET就能在数据库中执行SQL了.ADO.NET中提供了对不同数据库的统一操作接口(ODBC).另外还有一种操作数据库的 ...
- ADO.NET学习系列(三)----做一个登录案例
总体思路.根据用户输入的用户名和密码,来判断,和数据库里面存的是不是一样,如果一样就表明登录成功,否则就登录失败. 方案一: 1.select* from 表名 where username=&quo ...
- ado.net 学习小结
连接数据源 Connection对象.Connection对象处于最顶层,是所有数据访问请求的关口.我们通过其暴露的属性进行配置.下面是一段连接字符串的示例. if (string.IsNullOrE ...
- 菜鸟学习Ado.net笔记一:Ado.net学习之SqlHelper类
using System; using System.Collections.Generic; using System.Text; using System.Data.SqlClient; usin ...
随机推荐
- mysql_affected_rows的注意点
取得最近一次与 link_identifier 关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数. 1.执行成功,则返回受影响的行的数目,如果最近一次查询失败的话,函数返回 ...
- PHP中session详解
SESSION 的数据保存在哪里呢? 当然是在服务器端,但不是保存在内存中,而是保存在文件或数据库中. 默认情况下,PHP.ini 中设置的 SESSION 保存方式是 files(session ...
- JDK与adb/android环境变量配置完整教程
在这篇文章中.主要解决一个在Java或者Android开发中第一步须要解决的问题,那就是环境变量的配置.因为这部分在网上有非常多教程.參差不齐.我这里主要是对JDK与adb/android两者的环境变 ...
- 【VBA】快速填充单元格
在Excle中,需要填充单元格,直接下拉,然后即可填充,但是使用VBA代码又该如何实现这个呢? 代码区域 Public Sub 快速填充() Dim myRange As range Cells.Cl ...
- jQuery.delegate() 函数详解
delegate()函数用于为指定元素的一个或多个事件绑定事件处理函数. 此外,你还可以额外传递给事件处理函数一些所需的数据. 即使是执行delegate()函数之后新添加的元素,只要它符合条件,绑定 ...
- HTML to PDF pechkin
1. Goto Nuget 下载 Pechkin 控件 2. 创建需要打印的的PDF controller 和 Action, 这里会调用其他页面的内容进行打印. public ActionResul ...
- SD--怎样增强是同一类出库单使用不同号码段
在现实的业务中,一个公司有多个销售组织,它们使用同一个出库类型,业务往往希望它们创建的出库单的号码採用不同号码范围.但在sap里出库单号码范围是在出库单类型里设置,也就是使用同样的出库单类型,也就使用 ...
- NPOI 计算单元格高度
需求 要导出一个Excel,第一行是不定长字符串,合并单元格(A-G)已知,现要计算第一行的高度. 思路 已知,NPOI的宽度单位是1/256个英文字符,在本例中,A列的宽度是2048,即 2048 ...
- ACdream 1216 (ASC训练1) Beautiful People(DP)
题目地址:http://acdream.info/problem? pid=1216 这题一開始用的是线段树.后来发现查询的时候还须要DP处理.挺麻烦..也就不了了之了..后来想到,这题事实上就是一个 ...
- Iterator模式----一个一个遍历
说起遍历,我立马就想到for循环,增强for循环,foreach循环这类的循环遍历,这个不错,既然有这么方便的遍历,为什么我们还要学习Iterator这样的遍历呢? 一个重要的理由是:引入Iterat ...