文章 | 入侵攻击 | 安全防御 | 操作系统 | 网站建设 | 网络编程 | 路由交换 | 灾难恢复 | 新闻资讯 | 安全公告
下载 | 漏洞扫描 | 加密破解 | 入侵攻击 | 后门木马 | 溢出程序 | 综合工具 | 安全防护 | 原创发布 | 动画教程
论坛 | 黑客军火 | 配服务器 | 黑客情感 | 免费资源 | 美女贴图 | 灌水无罪 | 在线服务 | 会员照片 | 网站首页
 当前位置:主页 >> 技术文摘 >> 网络编程 >> NET编程 >> 文章内容  
 

 
ADO.NET:从 SQL Server 检索数据

www.hx99.org 阅读: 时间:2007-07-12 整理:华西黑盟
------------------------------------------------------------------
 此示例阐释如何使用SqlDataReader类从SQLServer读取数据。此类提供了一种从数据源读取只进数据记录流的方法。如果要使用具有 OLEDB接口或SQLServer7.0以前的SQLServer版本的数据库,请参阅从OLEDB检索数据

SqlDataReader是通过调用SqlCommand的ExecuteReader方法来创建的,而不是通过直接使用构造函数创建的。当 SqlDataReader在使用中时,相关联的SqlConnection将忙于为SqlDataReader提供服务。在这种情况下,除了关闭 SqlConnection之外,无法在SqlConnection上执行任何其他操作。在调用SqlDataReader的Close 方法之前,这种情况一直存在。

SqlDataReader提供一种从SQLServer数据源读取只进数据记录流的方法。要进行交互性更强的操作,如滚动、筛选、定位、远程处理等,请使用数据集。

此示例创建到Northwind数据库的SqlConnection。然后使用SqlCommandExecuteReader方法执行从雇员 (Employee)表中选择项的SqlCommand。此命令的结果将传递给SqlDataReader。

C#:

SqlDataReadermyDataReader=null;

SqlConnectionmySqlConnection=newSqlConnection("server=(local)\VSdotNET;Trusted_Connection=yes;database=northwind");
SqlCommandmySqlCommand=newSqlCommand("SELECTEmployeeID,LastName, FirstName,Title,ReportsToFROMEmployees",mySqlConnection);
...
mySqlConnection.Open();
myDataReader=mySqlCommand.ExecuteReader(CommandBehavior.CloseConnection);

 

VB:

DimmyDataReaderasSqlDataReader
DimmySqlConnectionasSqlConnection
DimmySqlCommandasSqlCommand

mySqlConnection=newSqlConnection("server=(local)\VSdotNET;Trusted_Connection=yes;database=northwind")
mySqlCommand=newSqlCommand("SELECTEmployeeID,LastName,FirstName, Title,ReportsToFROMEmployees",mySqlConnection)
...
mySqlConnection.Open()
myDataReader=mySqlCommand.ExecuteReader(CommandBehavior.CloseConnection)

 

此示例使用SqlDataReaderRead方法读取全部数据,然后将数据元素写出到控制台。

C#:

while(myDataReader.Read())
{
Console.Write(myDataReader.GetInt32(0)+"\t");
Console.Write(myDataReader.GetString(2)+""+myDataReader.GetString(1) +"\t");
Console.Write(myDataReader.GetString(3)+"\t");
if(myDataReader.IsDBNull(4))
Console.Write("N/A\n");
else
Console.Write(myDataReader.GetInt32(4)+"\n");
}

VB:

dowhile(myDataReader.Read())
Console.Write(myDataReader.GetInt32(0).ToString()+Chr(9))
Console.Write(myDataReader.GetString(2)+""+myDataReader.GetString(1) +Chr(9))
Console.Write(myDataReader.GetString(3)+Chr(9))
if(myDataReader.IsDBNull(4))then
Console.Write("N/A"+Chr(10))
else
Console.Write(myDataReader.GetInt32(4).ToString()+Chr(10))
endif
loop

最后,该示例先关闭SqlDataReader,然后再关闭SqlConnection。

C#:

//AlwayscallClosewhendonereading.
myDataReader.Close();

//Closetheconnectionwhendonewithit.
mySqlConnection.Close();

VB:

'AlwayscallClosewhendonereading.
myDataReader.Close()

'Closetheconnectionwhendonewithit.
mySqlConnection.Close()

摘要
1、SqlDataReader用于从SQLServer读取只进数据记录流。
2、请记住先关闭SqlDataReader,然后再关闭SqlConnection。
3、每次只能在SqlConnection上打开一个SqlDataReader。如果SqlDataReader在使用中,相关联的 SqlConnection将忙于为SqlDataReader提供服务。在这种情况下,除了关闭SqlConnection之外,无法在 SqlConnection上执行任何其他操作。

   -------------------------------------------------------------------------------------------
  上一篇:ADO.NET快速起步
  下一篇:[分享]ASP.NET学习手记```
   -------------------------------------------------------------------------------------------
用户名:
Email:
评论内容:
 
  精品推荐
推荐:ASPX一句话木马--终
利用ASP.Net 动态生成HTML
asp.net实现验证码
在asp.net中利用session做
Asp.net 中在客户端触发服
Asp.net 中服务端控件事件
ASP.NET上传图片并生成可
ASP.NET AJAX解决网页打开
实现IE浏览器部分菜单命令
Asp.net一夜速成教程
从sqlserver中读取图片
ASP.NET页面间的传值的几
用动态属性和DataView实现
用PagedDataSource类实现D
关于TreeView控件专题
asp.net上传图片并同时生
ASP.NET中水晶报表的使用
ASP.NET 中 Cookie 的基本
ADO.NET使用经验集
Forms身份验证
ASP.NET四种页面导航方式
ASP.NET中如何防范SQL注入
[分享]ASP.NET学习手记```
ASP.NET编程中的十大技巧
用ASP.NET上传图片并生成
关于我们 | 发展历程 | 在线投稿 | 核心监督 | 友情链接 | 网站地图 | 网站留言 | 联系我们
Copyright © 2004-2007 Www.Hx99.Net
版本:华西黑盟网站系统V5.0 Email:root#hx99.org
中国·西安·宝鸡 请使用IE6.0版本, 分辩率1024×768进行浏览
版权所有 任意抄袭 注意完整
陕ICP备06000444号