//未式关闭连接

public SysFunction GetModelById(stringid)

{

SqlConnection conn= new SqlConnection(ConfigurationManager.ConnectionStrings["sqlConStr"].ToString());

conn.Open();

SqlCommand cmd= new SqlCommand("SELECT * FROM SysFunction WHERE FunctionId =" +id, conn);

SqlDataReader dataReader=cmd.ExecuteReader();

SysFunction model= newSysFunction();while(dataReader.Read())

{

model.FunctionName= dataReader["FunctionName"].ToString();

model.FunctionCode= dataReader["FunctionCode"].ToString();

}

dataReader.Close();

dataReader.Dispose();string drState = dataReader.IsClosed.ToString(); //True

string connState = conn.State.ToString(); //Open

returnmodel;

}//调用Connection 对象的 Close() 方法显式关闭连接

public SysFunction GetModelById(stringid)

{

SqlConnection conn= new SqlConnection(ConfigurationManager.ConnectionStrings["sqlConStr"].ToString());

conn.Open();

SqlCommand cmd= new SqlCommand("SELECT * FROM SysFunction WHERE FunctionId =" +id, conn);

SqlDataReader dataReader=cmd.ExecuteReader();

SysFunction model= newSysFunction();while(dataReader.Read())

{

model.FunctionName= dataReader["FunctionName"].ToString();

model.FunctionCode= dataReader["FunctionCode"].ToString();

}

dataReader.Close();

dataReader.Dispose();

conn.Close();//显式关闭连接

string drState = dataReader.IsClosed.ToString(); //True

string connState = conn.State.ToString(); //Close

returnmodel;

}//调用Command 对象的 ExecuteReader() 方法时传递 CommandBehavior.CloseConnection 参数

public SysFunction GetModelById(stringid)

{

SqlConnection conn= new SqlConnection(ConfigurationManager.ConnectionStrings["sqlConStr"].ToString());

conn.Open();

SqlCommand cmd= new SqlCommand("SELECT * FROM SysFunction WHERE FunctionId =" +id, conn);//执行该cmd时,如果关闭关联的 DataReader 对象,则关联的 Connection 对象也将关闭

SqlDataReader dataReader =cmd.ExecuteReader(CommandBehavior.CloseConnection);

SysFunction model= newSysFunction();while(dataReader.Read())

{

model.FunctionName= dataReader["FunctionName"].ToString();

model.FunctionCode= dataReader["FunctionCode"].ToString();

}

dataReader.Close();

dataReader.Dispose();string drState = dataReader.IsClosed.ToString(); //True

string connState = conn.State.ToString(); //Close

returnmodel;

}

mysql datareader dataset_C# 之 DataReader 和 DataSet 的区别相关推荐

  1. Oracle与Mysql主键、索引及分页的区别小结

    Oracle与Mysql主键.索引及分页的区别,学习oracle的朋友可以参考下 区别: 1.主键,Oracle不可以实现自增,mysql可以实现自增. oracle新建序列,SEQ_USER_Id. ...

  2. Mysql之drop、truncate和delete的区别

    一.delete 1.delete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间中以便进行回滚(rollback)和重做操作,但要注意表 ...

  3. 了解mysql的三种不同安装方式的区别

    学习目的:了解mysql的三种不同安装方式的区别 学习内容: mysql 的安装有三种:分别是源码安装.二进制安装.rpm安装. 源码安装的优势:linux操作系统开放源代码,因此在其上面安装的软件大 ...

  4. php普通索引和唯一索引,MySQL中普通索引和唯一索引的区别详解

    本篇文章介绍了MySQL中普通索引和唯一索引的区别,讲解很详细,希望对学习MySQL的朋友有帮助! 需要注意的是: redo log中的数据,可能还没有 flush 到磁盘,磁盘中的 Page 1 和 ...

  5. mysql存储引擎中INNODB和MyISAM的区别

    切记:存储引擎是基于表的,而不是数据库. 存储引擎概念: MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛的不 ...

  6. MySQL中索引与视图的用法与区别详解

    索引与视图是我们在日常使用mysql必不可少的一部分,最近在学习中看到一本书中关于这方法写的不错,所以这篇文章主要给大家介绍了关于MySQL中索引与视图的使用与区别的相关资料,需要的朋友可以参考借鉴, ...

  7. Mysql 重做日志及与二进制日志的区别

    Mysql 重做日志及与二进制日志的区别(转http://blog.uouo123.com/post/623.html) Mysql默认情况下会有两个文件:ib_logfile0和ib_logfile ...

  8. PHP中MySQL、MySQLi和PDO的用法和区别

    MySQL 是 PHP 操作 MySQL 数据库最原始的 Extension.MySQLi 的 i 代表 Improvement ,提供了相对进阶的功能,就 Extension 而言,本身也增加了安全 ...

  9. MySQL+create+base,MySQL中CREATE DATABASE和CREATE SCHEMA的区别

    MySQL中CREATE DATABASE和CREATE SCHEMA的区别 create schema 是创建模式 create database 是创建数据库 但进入MySQL不用选择任何数据库即 ...

最新文章

  1. mybatis 报错最终解决 :argument type mismatch
  2. 超准中医体质测试 源码_心理测试:这几张心理测试图,一眼看透你的内心!不信你来试试!...
  3. 好文|张一鸣:10年面试2000人,我发现混的好的人,全都有同一个特质
  4. UE4学习-第三人称游戏的AI巡逻
  5. Linux之shell脚本(2)
  6. C++ 虚函数重载多态
  7. rhel6.1 kvm安装virtio驱动
  8. php数组合成函数,PHP合并数组函数array_merge用法分析
  9. Find命令使用实例
  10. php 变量 unset,在PHP中unset变量
  11. 北斗导航 | 灰常详细的RAIM 基本理论(公式推导)
  12. 2022年第十四届电工杯赛题分析
  13. isis安装指南(Liunx版本)+ ASP
  14. python爬虫爬取微信公众号的阅读数、喜爱数、文章标题和链接等信息
  15. Python3 用turtle库学画画——(一)美国队长盾牌
  16. 轻量级jQuery带底栏轮播(焦点图)插件slideBox
  17. c语言中数组strcat什么意思,c语言中的strcat是什么意思?
  18. js——行间样式与非行间样式
  19. 图灵学院 python全栈_图灵学院 Python全系列教程全栈工程师 python视频教程下载
  20. 无法打开计算机开始菜单,开始菜单,教您开始菜单无法打开

热门文章

  1. netsh 获取计算机名,Windows中Netsh命令的典型应用
  2. ROC曲线与AUC指标理解
  3. UCOSII系统时间管理
  4. 香港计算机专业招聘,全额奖学金机会!香港理工招聘计算机系博后/博士/研究助理...
  5. 游戏人工智能读书笔记--概述
  6. layui实现数据表格table的搜索功能
  7. 激光切管机可以运用到什么行业?
  8. OK6410开发板Uboot学习总结----(一)Uboot启动分析
  9. 华为笔试2021-08-18
  10. 《中台架构与实现》读书笔记