All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
网友分享:TopStyle Pro 的使用技巧_[Html教程]
教程:如何实现ASP.NET网站个性化_.net资料_编程技术
实例分析学习动态网页制作技术PHP开发投票系统_php资料_编程技术
ASP.NET技巧:全角字符转换为半角_.net资料_编程技术
优秀ASP.NET程序员的修炼之路_.net资料_编程技术
初试WAP之wml+ASP查询_[XML教程]
.net组件开发系列(三)之武术系列-控件生命周期与控件事件机制_[Asp.Net教程]
.NET,2.0,中对配置文件的读写_.net资料_编程技术
五种提高SQL性能的方法_[SQL,Server教程]
SQL,Server,7.0,入门(三)_mssql学习_编程技术
Reading number is top 10 pictures
美女浴室写真2
教你22句话
Female model behind the bitterness, often being overcharged3
联通的3G无线网卡我只用了一天,看看流量......
A man's favorite things1
A man's favorite things10
中国女孩大胆自拍,显露完美身材
青春清纯美女大集合2
Perfect small Laurie1
Beauty ZhiHuiLin1
Download software ranking
美女写真3
Boxer Classic video2
Tram sex maniac 2 (H) rar bag3
C#与.NET技术平台实战演练
SP3 for SQL2000
Boxer's Top ten classic battle5
Professional killers2 for Android
Boxer vs Yellow1
Unix video tutorial17
linux初级教程
delv published in(发表于) 2014/1/6 8:47:18 Edit(编辑)
ADO.NET起步_[Asp.Net教程]

ADO.NET起步_[Asp.Net教程]

ADO.NET起步_[Asp.Net教程]























ADO.NET被管理的提供者能够在这些OLE DB 提供者下工作。
驱动程序 Driver
提供者 Provider
SQLOLEDB
SQL OLE DB Provider




MSDAORA
Oracle OLE DB Provider




JOLT
Jet OLE DB Provider




MSDASQL/SQLServer ODBC
SQL Server ODBC Driver via OLE DB for ODBC Provider




MSDASQL/Jet ODBC
Jet ODBC Driver via OLE DB Provider for ODBC Provider
现在ADO.NET还不支持 MSDASQL/Oracle ODBC Driver(ORACLE OLE DB DRIVER FOR ODBC)
ADO.NET的核心组件:
Connections--连接和管理数据库事务。
Commands--向数据库发送的命令。
DataReaders--直接读取流数据。
DateSets 和 DateSetCommands--对驻留内存中的数据进行存储和操作.
核心的ADO.NET功能基本上可以被概括为如下内容:
Connection对象在Web页面和数据库间建立连接。Commands对象向数据库提供者发出命令,返回的结果以一种流的方式贯穿于这些连接中。结果集可以用DataReaders快速的读取,也可以储存到驻留内存的DateSets对象中,然后通过DateSetCommands对象让用户在数据集中访问和操作记录。开发者可以用过DateSet内置的方法在基础的数据源上去处理数据集。




为了使用.NET框架中的被管理提供者,需要把下面的名空间(namespaces)包括到.aspx页面中。




SQL被管理的提供者:
<%@ Import Namespace="System.Data.SQL" %>




ADO被管理的提供者:
<%@ Import Namespace="System.Data.ADO" %>




Connections
微软在.NET框架中提供了两个Connection对象以建立连接到特定的数据库:SQLConnection和 ADOConnection。Connection对象能在已经创建的连接上通过调用open的方法来被明确的打开连接。下面的代码片断演示了用任一提供者创建和打开连接。
SQLConnection
[C#]
String connectionString = "server=localhost; uid=sa; pwd=; database=northwind";
SQLConnection myConn = new SQLConnection(connectionString);
myConn.Open();




ADOConnection




[C#]
String connectionString = "Provider=SQLOLEDB.1; Data Source=localhost; uid=sa; pwd=; Initial Catalog=Northwind;"
ADOConnection myConn = new ADOConnection(connectionString);
myConn.Open();





Commands
在建立了连接以后,下一步要做的就是对数据库运行的SQL语句。最简单直接的方法是通过ADO和SQL命令对象来实现。
Command对象可以给予提供者一些该如何操作数据库信息的指令。
一个命令(Command)可以用典型的SQL语句来表达,包括执行选择查询(select query)来返回记录集,执行行动查询(action query)来 更新(增加、编辑或删除)数据库的记录,或者创建并修改数据库的表结构。当然命令(Command)也可以传递参数并返回值。




Commands可以被明确的界定,或者调用数据库中的存储过程。接下来的小段代码证明了在建立连接之后如何去发出一个Select命令。




SQLCommand




[C#]
String SQLStmt = " SELECT * FROM Customers";
SQLCommand myCommand = new SQLCommand(SQLStmt, myConn);





ADOCommand
[C#]
String SQLStmt = " SELECT * FROM Customers";
ADOCommand myCommand = new ADOCommand(SQLStmt, myConn);




DataReaders
当你处理大量数据的时候,大量内存的占用会导致性能上的问题。例如,一个连接(connection)用传统的ADO Recordset对象去读1000行数据库的记录,就必须为这1000行记录将内存分配给这个连接直至这个连接的生命周期结束。如果有1000用户在同一时间对同一计算机进行同样的操作,内存被过度的使用就会成为关键性的问题。
为了解决这些问题,.NET框架包括了DataReaders对象,而这个对象仅仅从数据库返回一个只读的,仅向前数据流。而且当前内存中每次仅存在一条记录。
DataReader接口支持各种数据源,比如关系数据和分级数据。DataReader可以适用于在运行完一条命令仅需要返回一个简单的只读记录集。
下面的代码片断阐述了怎么样声明变量指向一个DataReader对象的实例,还包括代码执行时Command对象产生的结果。当调用Command对象执行方法时,Command对象必须已经被创建和作为参数来传递。继续上面的例子:




SQLDataReader




[C#]
SQLDataReader myReader = null;
myCommand.Execute(out myReader);




ADODataReader




[C#]
ADODataReader myReader = null;
myCommand.Execute(out myReader);




接下来这步是一个使用DataReader的简单格式




[C#]
While (myReader.Read()) {
 [C#]
While (myReader.Read()) {
   // do your thing with the current row here
}







下面的例子展示了迄今为止我们所讨论的内容:建立一个到SQL数据源的连接,对于连接的发送select命令,用DataReader对象来保存返回的结果,然后通过循环DataReader取得数据。
下面是用C#写的完整代码。
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SQL" %>










注意,真正的捕获块已经包括在"try ... catch"语句中了。这提供了一些处理连接时出现异常的方法。在“finally”块中的代码总是会被执行,不管是否已经执行的是“try”或“catch”块,所以它变成关闭reader和conncetion对象的逻辑位置。












































添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.