[转]ExecuteNonQuery()、ExecuteReader()、ExecuteScalar()的简单说明

简介:

http://blog.csdn.net/wuyujie1219/archive/2009/07/26/4380956.aspx

    在连接SQL Server数据库:首先创建SqlConnection类和SqlCommand类实例分别用于连接到SQL Server数据库和执行SQL语句命令,然后打开数据连接并使用SqlCommand的相应方法执行SQL语句。
ExecuteNonQuery()方法执行SQL语句并且不返回数据;
ExecuteReader()方法将SQL语句发送给SqlConnection并生产一个SqlDataReader类对象,该SqlDataReader对象包含SQL命令返回的数据;
ExecuteScalar()方法执行SQl查询,并返回查询结果集中的第一行的第一列,忽略额外的列或行!

 例如:
SqlConnection MyConncetion = new SqlConnection(m_SqlConnection);
SqlCommand MyCmd = new SqlCommand(p_StrSql, MyConncetion);
一:
MyConncetion.Open();
MyCmd.ExecuteNonQuery();
二:
 MyConncetion.Open();
 SqlDataReader MyReader = MyCmd.ExecuteReader();
            if (MyReader.Read())
            {
                return 0;
            }
            else
            {
                throw new Exception("Value Unavailable!");
            }

三:
MyConnection.Open();
SqlDataAdapter SqlDa = new SqlDataAdapter(p_StrSql, MyConnection);
DataSet Ds = new DataSet("ds");
SqlDa.Fill(Ds);


四:

MyConncetion.Open();
object r = MyCmd.ExecuteScalar();
            if (object.Equals(r, null))
            {
                throw new Exception("Value Unavailable!");

            }
            else
            {
                return (int)r;

            }

注意:ExecuteReader() 方法需要配合 SqlDataReader 对象使用,执行得到的数据集为只读且光标只能从前向后移动。

            

string oSql = "select id, password, name, level    from verify";
SqlCommand comm = new SqlCommand(oSql, con);
con.Open();//在调用方法前打开数据库连接,可以减少数据库连接所花的时间,节省数据库资源。
SqlDataReader dr = comm.ExecuteReader ();
While(dr.Read())
{
    String id = "";
    id = dr[0].ToString(); //(0为第一列)
//或 id=dr["id"].ToString();(引用字段名)
//或id= dr.GetString (dr.GetOrdinal ("id"));
}
//在读取数据结束后才能关闭数据库,因为 SqlDataReader 对象的数据源必须保持数据库连接。
con.Close();

 


本文转自火地晋博客园博客,原文链接:http://www.cnblogs.com/yelaiju/archive/2010/10/21/1857863.html,如需转载请自行联系原作者

目录
相关文章
|
2天前
|
云安全 人工智能 安全
|
6天前
|
自然语言处理 开发者 iOS开发
📢通义千问Qwen3大模型新成员:Embedding系列模型登场!可在阿里云百炼直接体验
通义实验室正式发布Qwen3-Embedding系列模型,专为文本表征、检索与排序任务设计。该系列基于Qwen3基础模型训练,支持多语言和代码检索,具备卓越的泛化性、灵活的架构以及全面的语言支持。模型提供0.6B到8B参数规模选择,支持表征维度自定义和指令适配优化。训练采用三阶段架构,结合对比学习与监督训练,提升性能与效率。目前,Qwen3-Embedding已在Hugging Face、ModelScope和GitHub开源,并可通过阿里云百炼平台使用相关服务。未来将持续优化并拓展多模态语义理解能力。
📢通义千问Qwen3大模型新成员:Embedding系列模型登场!可在阿里云百炼直接体验
|
6天前
|
人工智能 安全 测试技术
信条:阿里云AI攻防安全启示录
解读AI时代下的安全攻防新态势
1106 11
|
2天前
|
人工智能 前端开发 Devops
通义灵码带你玩转开发者常用的MCP(合辑,持续更新中)
今天我们精选了与开发者息息相关和比较热门的MCP 服务,总结了这些技术服务在实际开发的最佳实践,涵盖了从前端开发、后端开发、DevOps、测试、运维等关键环节,及非研发领域中的热度较高的MCP服务。我们通过直播、图文等形式带你了解和学习!
534 3
|
3天前
|
数据采集 自然语言处理 搜索推荐
基于Qwen3的Embedding和Rerank模型系列,开源!
近年来,随着大规模预训练语言模型(LLM)的飞速发展,文本嵌入(Embedding)和重排序(Reranking)技术在搜索引擎、问答系统、推荐系统等多个领域的重要性愈发凸显。
501 18
|
9天前
|
人工智能 IDE 开发工具
|
14天前
|
人工智能 API 开发者
一文带你 "看见" MCP 的过程,彻底理解 MCP 的概念
本文介绍了模型上下文协议(MCP)的基本概念、工作原理及其应用过程。MCP 是一种连接 AI 助手与数据系统的开放标准,旨在帮助大模型生成更高质量的响应。文章从 RAG 和 Function Calling 的理论基础出发,详细解析了 MCP 的核心组件(主机、客户端、服务器)及优势,并通过 ModelScope 和 Cherry Studio 实例展示其操作流程。同时,文中指出了 MCP 存在的手动配置复杂、工具稳定性不足等问题,但也强调其作为过渡协议的重要性,为未来智能体间的协同和工具使用提供了方向。
1270 54
一文带你 "看见" MCP 的过程,彻底理解 MCP 的概念
|
6天前
|
人工智能 Java 决策智能
Spring AI Alibaba Graph:多智能体框架实践
Spring AI Alibaba 是一个面向 Java 开发者的开源人工智能框架,旨在简化 AI 应用开发。本文重点介绍其 Graph 组件,用于解决工作流与多智能体协作问题。Graph 组件通过声明式编程接口,提供统一的上下文管理、消息记忆、人工确认节点等功能,支持复杂 AI 应用的构建。
|
4天前
|
存储 前端开发 JavaScript
2025 最新前端 100 道经典面试题及详细答案汇总整理
本文整理了100道前端常见面试题及其详细答案,涵盖HTML、CSS、JavaScript等多个领域,助你系统复习前端知识。内容包括HTML5新特性、CSS盒模型、Flex与Grid布局区别、选择器优先级等核心知识点,以及伪类和伪元素的区别等细节。适合准备面试或巩固基础的开发者学习。资源可从文末链接下载。
375 0
|
17天前
|
机器学习/深度学习 自然语言处理 算法框架/工具
实战 | Qwen2.5-VL模型目标检测(Grounding)任务领域微调教程
在目标检测领域,众多神经网络模型早已凭借其卓越的性能,实现了精准的目标检测与目标分割效果。然而,随着多模态模型的崛起,其在图像分析方面展现出的非凡能力,为该领域带来了新的机遇。多模态模型不仅能够深入理解图像内容,还能将这种理解转化为文本形式输出,极大地拓展了其应用场景。
1242 74