DataReader的详细用法

article/2025/10/1 0:08:17
  1 // DataReader的详细用法  
  2    cmd.CommandText  =   " GetInfo "
  3   cmd.CommandType  =  CommandType.StoredProcedure; 
  4   SqlParameter param  =  cmd.Parameters.Add( " @Fid " , 16 ); 
  5   param  =  cmd.Parameters.Add( " @Fname " ,SqlDbType.VarChar, 8 ); 
  6   param.Direction  =  ParameterDirection.Output; 
  7   param  =  cmd.Parameters.Add( " @Fphone " ,SqlDbType.VarChar, 8 ); 
  8   param.Direction  =  ParameterDirection.Output; 
  9   conn.Open(); 
 10   cmd.ExecuteNonQuery(); 
 11    string  Fname  =  cmd.Parameters[ " @Fname " ].Value.ToString(); 
 12    string  Fphone  =  cmd.Parameters[ " @Fphone " ].Value.ToString(); 
 13   Console.WriteLine(Fname  +   "    "   +  Fphone); 
 14   conn.Close(); 
 15   showSplit(); 
 16  } 
 17   
 18   // ************************************** 
 19   // *演示读取多个无关记录集 
 20   // **************************************  
 21   public   void  multiResult() 
 22  
 23   SqlCommand cmd;  
 24   cmd  =  conn.CreateCommand(); 
 25    string  sqla  =   " select Fname from friend "
 26    string  sqlb  =   " select Fphone from friend "
 27   cmd.CommandText  =  sqla  +   " ; "   +  sqlb; 
 28   conn.Open(); 
 29   SqlDataReader reader =  cmd.ExecuteReader(); 
 30    int  i  =   1
 31    do  
 32   
 33    Console.WriteLine( " "   +  i.ToString()  +   " 个记录集内容如下:/n " ); 
 34     while (reader.Read()) 
 35    
 36     Console.WriteLine(reader[ 0 ].ToString()  +   " /t " ); 
 37    }
 
 38    i ++
 39   }
while (reader.NextResult());  // NextResult()移动到下一个记录集 
 40   reader.Close(); 
 41   conn.Close(); 
 42   showSplit(); 
 43  }
 
 44   
 45   // ************************************** 
 46   // *使用DataReader获得数据库模式信息 
 47   // **************************************  
 48   public   void  getSchema() 
 49  
 50   SqlCommand cmd;  
 51   cmd  =  conn.CreateCommand(); 
 52    string  sql  =   " select Fid,Fname,Fphone from friend "
 53      cmd.CommandText  =  sql; 
 54      conn.Open(); 
 55      SqlDataReader reader  =  cmd.ExecuteReader(); 
 56      DataTable SchemaTable  =  reader.GetSchemaTable(); 
 57       
 58      DataRowCollection SchemaColumns  =  SchemaTable.Rows; 
 59      DataColumnCollection SchemaProps  =  SchemaTable.Columns;    
 60       foreach (DataRow SchemaColumn  in  SchemaColumns) 
 61      
 62        foreach (DataColumn SchemaColumnProp  in  SchemaProps) 
 63       
 64        Console.WriteLine(SchemaColumnProp.ColumnName  +   " = "   +  SchemaColumn[SchemaColumnProp.ColumnName].ToString()); 
 65       }
 
 66      }
 
 67      reader.Close(); 
 68      conn.Close(); 
 69      showSplit(); 
 70  }
 
 71   
 72   // ************************************** 
 73   // *从数据库读取二进制数据的代码段 
 74   // *该代码段只是读取二进制的片断,不是 
 75   // *整个程序,所以不能执行,你可以把它 
 76   // *集成到你的WinForm项目里面。 
 77   // **************************************  
 78   public   void  getBinary() 
 79  
 80    /*  
 81   System.IO.MemoryStream stream = new System.IO.MemoryStream(); 
 82   System.IO.BinaryWriter writer = new System.IO.BinaryWriter(stream);    
 83   int BufferSize = 1024; 
 84   byte[] Buffer = new Byte[BufferSize]; 
 85   long Offset = 0; 
 86   long BytesRead = 0; 
 87   do 
 88   { 
 89    BytesRead = reader.GetBytes(2,Offset,Buffer,0,BufferSize); 
 90    writer.Writer(Buffer,0,(int)BytesRead); 
 91    writer.Flush(); 
 92    Offset += BytesRead; 
 93   } 
 94   while(BytesRead == BufferSize); 
 95    */
 
 96  }
 
 97   
 98   // 添加输出分隔 
 99   private   void  showSplit() 
100  
101   Console.WriteLine( " /n********************************************************************/n " ); 
102  }
 
103   
104   public   static   void  Main( string  [] args) 
105  
106   SqlReader sqlreader  =   new  SqlReader(); 
107    
108   sqlreader.basicReader(); 
109    
110   sqlreader.hasParamReader(); 
111    
112   sqlreader.hasOledbParamReader(); 
113    
114   sqlreader.outParamShow(); 
115    
116   sqlreader.multiResult(); 
117    
118   sqlreader.getSchema(); 
119  }
  
120 }

http://chatgpt.dhexx.cn/article/wy5UhFvJ.shtml

相关文章

read data

将82078置于读数据模式需要一组九(9)个字节。 发出READ DATA命令后,82078加载磁头(如果它处于卸载状态),等待指定的磁头稳定时间(在SPECIFY命令中定义),并开始读取ID地址…

pandas-datareader

pandas-datareader介绍 Pandas库提供了专门从财经网站获取金融数据的API接口,可作为量化交易股票数据获取的另一种途径,该接口在urllib3库基础上实现了以客户端身份访问网站的股票数据。需要注意的是目前模块已经迁徙到pandas-datareader包中&#xff0…

DataReader

DataReader类概述 DataReader 类在 System.Data.SqlClient 命名空间中,对应的类是 SqlDataReader,主要用于读取表中的查询结果,并且是以只读方式读取的(即不能修改 DataReader 中存放的数据)。 正是由于 DataReader 类…

C#之读取数据:DataReader对象

上一篇涉及到Command对象的ExecuteReader()方法返回一个DataReader对象,那么我们就来详细的介绍这个DataReade对象。 下面的例子使用的数据表依然与上篇的相同为CustomerManagement数据库中的manager数据表: DataReader对象概述 DataReader对象提供了顺序…

C# DataReader读取查询

C# DataReader:读取查询结果 在C# 中 DataReader 类的作用是读取查询结果,与在《C# Command》一节中介绍的 Command 类 中的 ExecuteReader 方法一起使用。 下面来介绍一下 DataReader 类中常用的属性和方法,以及如何使用该类查询表中的数…

DataReader用法

转载自:http://www.studyofnet.com/news/693.html 本文导读:DataReader对象只允许以只读、顺向的方式查看其中所存储的数据,提供一个非常有效率的数据查看模式,Datareader对象不能关使用new关键字创建。但可以使用ExecuteReader&a…

C语言初阶-C语言中static的用法

目录 前言 1.static的定义 2.static修饰局部变量 2.static修饰全局变量 3.static修饰函数 总结: 前言 哈喽,大家好,我是大鹏,目前是一名大二的学生,今天给大家带来的是static的用法,希望大家给个关注…

C语言关键字之static

static是C语言中得一个关键字。 它的使用有三种情况:修饰局部变量、全局变量、函数。 修饰局部变量:改变存储属性 普通的局部变量是存放在栈中的,而被static修饰的变量是存放在数据段中的。 放在数据段中的具体位置具体分析:已…

c语言 static运用,灵活改变生命周期,让你写代码如鱼得水

在C语言中static是非常重要的一个关键字 static意为静态的,它的用法基本分为三种 1. 修饰局部变量(改变局部变量的生命周期) 2. 修饰全局变量(使全局变量仅作用于当前源文件) 3. 修饰函数(使函数仅作用…

c语言staticint的作用,C语言 static 声明静态变量?大佬原来用它干这事!

原标题:C语言 static 声明静态变量?大佬原来用它干这事! C语言可变参数只会用算啥本事?看我来抽丝剥茧干翻它! 高手在写代码的时候,会特别注重的一点就是,对外的方法对外,不对外的方…

C语言static和extern关键字

1.static static修饰的变量,自始至终只有一块空间,当前文件才能使用,生命周期是从定义开始直到程序结束;全局变量的定义是在.c文件中,但是声明全局变量是在.h中;static:静态型,用它定…

C语言static关键字修饰变量及函数时的用法和原理

目录 一.static关键字修饰局部变量 二.static关键字修饰全局变量 三.static关键字修饰函数 一.static关键字修饰局部变量 在内存中,往往将其分为三个区块,栈区,堆区,静态区。C语言中定义的局部变量包括函数参数都存储在栈区&am…

C语言 static的使用

你知道C语言中 static 有几种用法&#xff1f; 目录 1. static 可以修饰局部变量 2. static 可以修饰全局变量 3. static 可以修饰函数 1.static 可以修饰局部变量 首先让我看看这段代码 #include<stdio.h> void test() {int a 1;a a 1;printf("%d", a);…

C语言 Static关键字的作用详解

前言&#xff1a; static 是用来修饰函数和变量的&#xff0c;可以修饰局部变量&#xff0c;全局变量以及函数 一、修饰局部变量 &#xff08;称为静态局部变量&#xff09; 来看俩段代码&#xff1a; 对于第一段代码来说&#xff0c;它循环5次&#xff0c;每次调用一下fun(…

[深度解剖C语言] --关键字 static

static ---最名不副实的关键字 目录 1.static修饰全局变量 2.static修饰函数 3.static修饰局部变量 static的作用&#xff1a; 1.static修饰全局变量 我们创建两个源文件&#xff0c;一个test.c&#xff0c;一个main.c 现在我们在test.c文件下定义一个全局变量 int g_va…

C语言中static的用法(修饰局部变量,修饰全局变量,修饰函数)

static 关键字有三种用法 static 修饰局部变量 - 静态局部变量static 修饰全局变量 - 静态全局变量static 修饰函数 - 静态函数 static 关键字的三种用法 1. static 修饰局部变量 - 静态局部变量2. static 修饰全局变量 - 静态全局变量3. static 修饰函数 - 静态函数 1. stati…

带你熟知关键字static用法——C语言(举例及通俗易懂)

引入 首先我们看两个例子&#xff1a; 例1 #include<stdio.h> void test() {int i 0;i;printf("%d", i); } int main() {int a 0;while (a < 10){test();a;}return 0; } 例2 #include<stdio.h> void test() {static int i 0;i;printf("%d…

【C语言】 Static关键字的用法和详解(太细了!!!)

文章目录 目录 前言 一、static是什么 二、static的用法 1.修饰局部变量 2.修饰全局变量 3.修饰函数 总结 前言 static在不同的语言中又有不同的使用方法&#xff0c;本文介绍的是static在C语言当中的用法。 一、static是什么 static在C语言中是关键字&#xff0c;中…

C语言中的static的用法(超级详细)

&#x1f339;作者:云小逸 &#x1f4dd;个人主页:[云小逸的主页] &#x1f4dd;码云&#xff1a;云小逸 (YunXiaoYi003) &#x1f91f;motto:要敢于一个人默默的面对自己&#xff0c;强大自己才是核心。不要等到什么都没有了&#xff0c;才下定决心去做。种一颗树&#xff0c;…

JQuery HTML5 验证表单

HTML5新增属性验证表单内容 <body><!-- HTML5验证的特性 &#xff1a;required"required"必填number,url,email,search....--><form action"#" method"post"><input type"search" id"uname" value&quo…