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

Reading number is top 10 articles
如何在十天学内会php之第九天_[PHP教程]
C#教程:DLL动态链接库的优点
c#生成图片验证码代码_[Asp.Net教程]
SQL,Server,最佳实践分析器使用小结_[SQL,Server教程]
visual c++中制作弹出式菜单
XHTML 1.0:标记新的开端_[Html教程]
c#中GDI+图形图像:GDI+中的贝塞尔样条使用方法
PHP基础:PHP4和PHP5的配置异同比较_php资料_编程技术
学习笔记,ASP.NET,5种页面转向法_.net资料_编程技术
ASP.NET技巧:错误处理封装_[Asp.Net教程]
Reading number is top 10 pictures
Sora aoi mirror memorial classics3
Breasts woman big set 2
In 2013 hercules Arnold classic1
红楼梦金陵十二钗(1)
A man's favorite things10
猫眯也疯狂
The money of more than 100 countries and regions12
30 beautiful school beauty5
Look at the Spring Festival people crowded into the what kind
各种囧况!玩游戏最不喜欢出现的十件事(点评)
Download software ranking
Take off clothes to survival
仙剑奇侠传98硬盘WINXP版
VC++6.0培训教程
Eclipse 4.2.1 For Win32
Prostitutes diary
Unix video tutorial11
Love the forty days
Tram sex maniac 2 (H) rar bag10
功夫熊猫2(下集)
Such love down(擒爱记)
delv published in(发表于) 2014/1/6 9:08:38 Edit(编辑)
一个程序详细研究DataReader_[Asp.Net教程]

一个程序详细研究DataReader_[Asp.Net教程]

一个程序详细研究DataReader_[Asp.Net教程]

//***********************************************************
//*名称:一个程序详细研究DataReader,同时显示Command用法
//*功能:演示DataReader的各项操作。
//*说明:如果需要文字说明请查看我的BLOG里面关于ado.net的文章
//*作者:雪冬寒
//*BOLG:http://blog.csdn.net/bineon
//***********************************************************
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.OleDb;


class SqlReader
{
const string connStr = "data source=bineon;user id=sa;password=87345587;initial catalog=contract";
SqlConnection conn;



public SqlReader()
{
conn = new SqlConnection(connStr);
}

//**************************************
//*演示DataReader的两种取值方法
//**************************************
public void basicReader()
{
string sql="select * from friend";
SqlCommand cmd;
cmd = conn.CreateCommand();
cmd.CommandText = sql;
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
while(reader.Read())
{
Console.WriteLine("N{0}\tName:{1}\tPhoneNum:{2},\tAddress:{3}",reader.GetInt32(0).ToString(),reader.GetString(1),reader[2].ToString(),reader["Faddress"].ToString());
}
showSplit();
reader.Close();
conn.Close();
}

//**************************************
//*演示带参数查询的操作,使用SqlCilent
//**************************************
public void hasParamReader()
{
SqlCommand cmd;
cmd = conn.CreateCommand();
string sql = "select Fname,Fphone,Faddress from friend where Fid > @Fid";
cmd.CommandText = sql;
SqlParameter param = new SqlParameter("@Fid",SqlDbType.Int,4);
param.Value = 15;
cmd.Parameters.Add(param);
conn.Open();
//当关闭reader的时候同时关闭数据库连接
SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
while(reader.Read())
{
Console.WriteLine("Name:{0}\tPhoneNum:{1}\tAddress:{2}",reader.GetString(0),reader.GetString(1),reader.GetString(2));
}
showSplit();
//无需关闭conn,系统会自动调用这个方法来关闭conn的。
reader.Close();
}

//**************************************
//*演示带参数查询的操作,使用OleDb
//**************************************
public void hasOledbParamReader()
{
SqlCommand cmd;
cmd = conn.CreateCommand();
string sql = "select Fname,Fphone,Faddress from friend where Fid > ?";
string oledbConnStr = "Provider=sqloledb;" + connStr;
OleDbConnection oleConn = new OleDbConnection(oledbConnStr);
OleDbCommand oleCmd = new OleDbCommand(sql,oleConn);
oleCmd.Parameters.Add("nothing",15);
oleConn.Open();
OleDbDataReader oleReader = oleCmd.ExecuteReader();
while(oleReader.Read())
{
Console.WriteLine("Name:{0}\tPhoneNum:{1}\tAddress:{2}",oleReader.GetString(0),oleReader.GetString(1),oleReader.GetString(2));
}
showSplit();
oleReader.Close();
oleConn.Close();
}

//**************************************
//*演示存储过程的输出参数
//**************************************
public void outParamShow()
{
SqlCommand cmd;
cmd = conn.CreateCommand();
cmd.CommandText = "GetInfo";
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter param = cmd.Parameters.Add("@Fid",16);
param = cmd.Parameters.Add("@Fname",SqlDbType.VarChar,8);
param.Direction = ParameterDirection.Output;
param = cmd.Parameters.Add("@Fphone",SqlDbType.VarChar,8);
param.Direction = ParameterDirection.Output;
conn.Open();
cmd.ExecuteNonQuery();
string Fname = cmd.Parameters["@Fname"].Value.ToString();
string Fphone = cmd.Parameters["@Fphone"].Value.ToString();
Console.WriteLine(Fname + " " + Fphone);
conn.Close();
showSplit();
}

//**************************************
//*演示读取多个无关记录集
//**************************************
public void multiResult()
{
SqlCommand cmd;
cmd = conn.CreateCommand();
string sqla = "select Fname from friend";
string sqlb = "select Fphone from friend";
cmd.CommandText = sqla + ";" + sqlb;
conn.Open();
SqlDataReader reader= cmd.ExecuteReader();
int i = 1;
do
{
Console.WriteLine("第" + i.ToString() + "个记录集内容如下:\n");
while(reader.Read())
{
Console.WriteLine(reader[0].ToString() + "\t");
}
i++;
}while(reader.NextResult()); //NextResult()移动到下一个记录集
reader.Close();
conn.Close();
showSplit();
}

//**************************************
//*使用DataReader获得数据库模式信息
//**************************************
public void getSchema()
{
SqlCommand cmd;
cmd = conn.CreateCommand();
string sql = "select Fid,Fname,Fphone from friend";
cmd.CommandText = sql;
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
DataTable SchemaTable = reader.GetSchemaTable();

DataRowCollection SchemaColumns = SchemaTable.Rows;
DataColumnCollection SchemaProps = SchemaTable.Columns;
foreach(DataRow SchemaColumn in SchemaColumns)
{
foreach(DataColumn SchemaColumnProp in SchemaProps)
{
Console.WriteLine(SchemaColumnProp.ColumnName + "=" + SchemaColumn[SchemaColumnProp.ColumnName].ToString());
}
}
reader.Close();
conn.Close();
showSplit();
}

//**************************************
//*从数据库读取二进制数据的代码段
//*该代码段只是读取二进制的片断,不是
//*整个程序,所以不能执行,你可以把它
//*集成到你的WinForm项目里面。
//**************************************
public void getBinary()
{
/*
System.IO.MemoryStream stream = new System.IO.MemoryStream();
System.IO.BinaryWriter writer = new System.IO.BinaryWriter(stream);
int BufferSize = 1024;
byte[] Buffer = new Byte[BufferSize];
long Offset = 0;
long BytesRead = 0;
do
{
BytesRead = reader.GetBytes(2,Offset,Buffer,0,BufferSize);
writer.Writer(Buffer,0,(int)BytesRead);
writer.Flush();
Offset += BytesRead;
}
while(BytesRead == BufferSize);
*/
}

//添加输出分隔
private void showSplit()
{
Console.WriteLine("\n********************************************************************\n");
}

public static void Main(string [] args)
{
SqlReader sqlreader = new SqlReader();

sqlreader.basicReader();

sqlreader.hasParamReader();

sqlreader.hasOledbParamReader();

sqlreader.outParamShow();

sqlreader.multiResult();

sqlreader.getSchema();
}
}







添加到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.