现在的位置: 首页 > 综合 > 正文

ASP.NET —- 连接Access . 增删改查(转)

2013年08月27日 ⁄ 综合 ⁄ 共 2947字 ⁄ 字号 评论关闭

下文转自:http://hi.baidu.com/%CE%C4%D6%AA%CF%FE/blog/item/f87b386608bb5e2eaa184c5a.html

 

在此多谢博主文知晓!

 

作用:利用DataReader阅读类,执行数据的“只向前”的读取。
问:什么是DataReader?
答:ADO.NET
DataReader对象可以从数据库中检索只读、只进的数据流。因为每次在内存中的数据只有一行,所以使用DataReader可提高应用程序的性能并
减少系统开销。它还提供了未缓冲的数据流,该数据流使过程逻辑可以有效地按顺序处理从数据源中返回的结果。由于数据不在内存中缓存,所以在检索大量数据
时,DataReader是一种合适的选择。
string strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath ("db1.mdb");//ACCESS链接字符串
OleDbConnection ConnAcc=new OleDbConnection (strConn); //OleDb链接类的实例化
ConnAcc.Open ();//打开数据库
string strSQL="SELECT * FROM 表名1";//SQL语句
OleDbCommand cmd = new OleDbCommand(strSQL,ConnAcc);//创建Command命令对象
OldDbDataReader dr=cmd.ExecuteReader();//创建DataReader对象,并调用ExecuteReader从数据源检索行
dr.Read();//启动阅读器的Read方法,返回行的每一列
//..数据读取..

备注
若要创建 OleDbDataReader,必须调用 OleDbCommand 对象的 ExecuteReader 方法,而不能直接使用构造函数。
在使用 OleDbDataReader 时,相关联的 OleDbConnection 忙于为 OleDbDataReader 服务,对
OleDbConnection 不能执行任何其他操作,只能关闭。这种情况会一直持续到调用 OleDbDataReader 的 Close
方法为止。例如,在调用 Close 之前,无法检索输出参数。

dr.Close();//关闭阅读器
ConnAcc.Close();//关闭数据库
作用:利用DataSet,DataAdapter读取数据。
问:什么是DataSet?
答:DataSet对象与ADO
Recordset对象相似,但功能更为强大,并具有另一重要区别:DataSet始终是断开的。DataSet对象表示数据的缓存,具有类似数据的结
构,如表、列、关系和约束。但是,尽管DataSet可以像数据库那样运行,但重要的是要记住:DataSet对象不直接与数据或其他源数据进行交互。这
使得开发人员能够使用始终保持一致的编程模型,而不用理会源数据的驻留位置。
问:什么是DataAdapter?
答:DataAdapter对象在DataSet与数据源之间起桥梁作用。
//ACCESS链接字符串

string strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath ("db1.mdb");

//OleDb链接类的实例化
OleDbConnection ConnAcc=new OleDbConnection (strConn);

//打开数据库

ConnAcc.Open ();

//要执行的SQL语句
string strSQL="SELECT * FROM 表名1 ";

//创建DataAdapter数据适配器实例
OleDbDataAdapter da=new OleDbDataAdapter(strSQL,ConnAcc);

//创建DataSet实例

DataSet ds=new DataSet();

//使用DataAdapter的Fill方法(填充),调用SELECT命令

da.Fill(ds,"自定义虚拟表名");

//关闭数据库

ConnAcc.Close ();

作用:利用ExecuteNonQuery,执行数据的插入、更新、删除。
问:什么是ExecuteNonQuery?
答:在ADO.NET中,ExecuteNonQuery方法用于执行不需要返回结果的命令,如插入、删除和更新等操作。
//ACCESS链接字符串

string strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath ("db1.mdb");

OleDbConnection ConnAcc=new OleDbConnection (strConn); //OleDb链接类的实例化
ConnAcc.Open ();//打开数据库
string strSQL="INSERT INTO 表名1、UPDATE 表名1 SET、DELETE FROM 表名1";//插入、更新、删除的SQL语句
OleDbCommand cmd=new OleDbCommand (strSQL,ConnAcc);//创建Command命令对象
cmd.ExecuteNonQuery();//执行命令
ConnAcc.Close ();//关闭数据库

作用:利用ExecuteScalar统计数据。
问:什么是ExecuteScalar?
答:ExecuteScalar方法可以返回单个值,如求和、总行数等SQL语句的聚合函数。
//ACCESS链接字符串

string strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath ("db1.mdb");

OleDbConnection ConnAcc=new OleDbConnection (strConn); //OleDb链接类的实例化
ConnAcc.Open ();//打开数据库
string strSQL="SELECT COUNT(*) FROM 表名1";//SQL统计,SUM等等
OleDbCommand cmd = new OleDbCommand(strSQL,ConnAcc);//创建Command命令对象
int intNum=(int)cmd.ExecuteScalar();//得到统计数,SUM则用double
ConnAcc.Close();//关闭数据库

注:使用SQL Server请将关键字OleDb改为Sql,并修改字符串strConn为SQL Server链接参数即可。

在 web.config 文件中:

<connectionStrings>

    <add name="ACCESSCONNECTIONSTRING"        connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:/Socut.mdb"
            providerName="System.Data.OleDb" />

</connectionStrings>
注: Data Source :可为绝对路径,相对路径

【上篇】
【下篇】

抱歉!评论已关闭.