c# -- mysql中的读取数据的几个方法

C#从数据库mysql读取数据 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; 阅读详情

1)ExecuteNonQuery():执行命令对象的SQL语句,返回一个int类型变量,如果SQL语句是对数据库的记录进行操作(如记录的增加、删除和更新),那么方法将返回操作所影响的记录条数。

下面为详细的解释运用:

命令对象的ExecuteNonQuery()方法用于执行任何不从数据库返回结果集的SQL操作命令,包括INSERT INTO、UPDATE、DELETE语句、没有返回数值的存储过程、CREATE TABLE和CREATEINDEX之类的DDL语句。ExecuteNonQuery方法还可用来执行目录操作,例如查询数据库的结构或创建诸如表等的数据库对象。ExecuteNonQuery方法对于UPDATE、INSERT INTO和DELETE这些操作语句,其返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为-1。如果发生回滚,返回值也为-1。
假设cmd为SQL SERVER数据提供者的命令对象(即SqlCommand),cn为连接对象(保持打开状态),调用ExecuteNonQuery方法如以下代码所示。
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
//设置cmd的命令文本,本例为删除Table1表中id字段值大于1的记录
cmd.CommandText = “DELETE FROM Table1 WHERE [id]>1”;
int count = cmd.ExecuteNonQuery();
以上代码中,创建了SqlCommand类型的命令对象cmd,设置其连接为连接对象cn,SQL命令文本为某个SQL语句(一般为增、删、改命令)。执行ExecuteNonQuery方法后,命令文本即通过连接对象作用到数据库中,其返回值count则为数据库中受到影响的数据记录数量。

 

(2)ExecuteScalar():执行命令对象的SQL语句,如果SQL语句是SELECT查询,则仅仅返回查询结果集中的第1行第1列,而忽略其他的行和列。该方法所返回的结果为object类型,在使用之前必须强制转换为所需的类型。如果SQL语句不是SELECT查询,则返回结果没有任何作用。

下面为详细的方法的解释运用等:

命令对象的ExecuteScalar()方法由于只能返回数据集的第1行第1列,所以常被用于执行聚合函数。假设cmd为SQL SERVER数据提供者的命令对象(即SqlCommand),cn为连接对象(保持打开状态),调用ExecuteScalar方法如以下代码所示。
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
//设置cmd的命令文本,本例为查询Table1表中记录的数量
cmd.CommandText = “SELECT COUNT(*) FROM Table1”;
int count = (int)cmd.ExecuteScalar();
以上代码中,创建了SqlCommand类型的命令对象cmd,设置其连接为连接对象cn,SQL命令文本为某个SQL语句。由于返回值为object类型,所以需要进行强制转换,count变量即存储了所需数据表中记录的数量。

 

 

(3)ExecuteReader():我们通常在asp中用Recordset对象来从数据库中读出数据,并且用循环语句来一个一个的读出数据,但在我们的ADO.NET中,我们就是DataReader 对象的ExecuteReader()方法来进行数据的列出,并且我们用这个ExecuteReader()方法来显示数据是最快的一种方法,因为当我们在用ExecuteReader()方法中的DataReader 对象来进行数据的在网站建设中显示时,他只可以一条一条向前读,不能返回,也就是像ASP中的ADO方法中的Recordset 对象的Movenext一样,他没有move -1这样的返回方法。

说明:如果没有数据可操作,那么只能使用调用命令对象的ExecuteReader方法,返回一个数据读取器(DataReader对象)。因为 ExecuteNonQuery()与ExecuteScalar()在没有数据的时候调用时,就会出现“对象没有实例化”的错误。所以在判断是否有数据时,应该调用数据读取器的Read()方法来检测。

C#连接mysql数据库实现登陆注册界面【小白教程】 前言: 1.主窗体为登录界面,输入用户名和密码,单击“登录”按钮时从数据库中读取数据,与输入的用户名、密码验证,验证通过后,登录窗体消失。单击“注册”按钮时弹出第三个窗体。 单击“确定”按钮时要把窗体中的输入的数据保存到数据库中 。 环境: Visual Studio 2019 + MySQL8.0 ... 阅读详情

相关推荐

51单片机也能玩转信号发生器?手把手教你用DAC0832和LM358输出四种标准波形

本文详细介绍了如何使用51单片机和DAC0832芯片搭配LM358运放,自制低成本信号发生器,实现正弦波、矩形波、三角波和锯齿波四种标准波形的输出。从硬件选型、电路设计到编程实现,手把手教你完成这一实用电子项目,总成本不到50元,适合电子爱好者和学生实践。

weixin_30530939的博客 551

mysql查询一列中有多少不同的值,MySQL查询来计算不同值的出现并将结果显示在新列中?...

让我们首先创建一个表-mysql>createtableDemoTable(Valueint);使用插入命令在表中插入一些记录-mysql>insertintoDemoTablevalues(80);mysql>insertintoDemoTablevalues(90);mysql>insertintoDemoTablevalues(90);...

weixin_39949889的博客 624

面渣逆袭之Java基础篇2

Tips:所有的关键字都是小写的,在 IDE 中会以特殊颜色显示。default 这个关键字很特殊,既属于程序控制,也属于类,方法和变量修饰符,还属于访问控制。①在程序控制中,当在 switch 中匹配不到任何情况时,可以使用 default 来编写默认匹配的情况。②在类,方法和变量修饰符中,从 JDK8 开始引入了默认方法,可以使用 default 关键字来定义一个方法的默认实现。③在访问控制中,如果一个方法前没有任何修饰符,则默认会有一个修饰符 default,但是这个修饰符加上了就会报错。

m0_73804764的博客 1108

C# 连接 MySQL 数据库

C# 使用 MySQL 数据库的情况还是比较少的,大部分使用 Windows 平台一般使用 SQL Server,在两年前我买过100元一年的学生服务器,当时也是买着玩的,装 MySQL 数据库使用起来就非常卡,也不知道为什么,但 SQL Server 操作起来不但不卡,还非常的流畅,但是 SQL Server 安装起来比较麻烦,卸载也容易出问题,尤其是盗版系统,我在工作中,也出现了几次 SQL Server 卸载不了的事,我自己电脑用的正版Win10系统,从没出现这种事。

熊思雨的博客 3万+

离线语音识别模块LD3320实战:如何低成本给STM32设备加上‘耳朵’和‘嘴巴’?

本文详细介绍了如何为STM32设备集成LD3320离线语音识别模块,实现低成本语音交互方案。从硬件连接到STM32底层驱动实现,再到指令训练与词条优化技巧,完整解析了唤醒词检测与自定义指令识别的全过程。LD3320作为非特定人声识别芯片,无需网络连接,适用于智能家居、工业控制等场景,是嵌入式开发者的理想选择。

weixin_30906185的博客 555

Anaconda详细安装及使用教程(带图文)

Anacond的介绍 Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。因为包含了大量的科学包,Anaconda的下载文件比较大(约531 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和Python)。 Conda是一个开源的包、环境管理器,可以用于...

代码帮 186万+

MySQL统计一列中不同值(字段的不同值)的数量的六种方式及其结果和耗时的比较

最近有个数据看板的需求,就是展示各种汇总和统计的数据,这其中就有大量统计字段不同值的数量的情况: 一开始第一想法就是用count+where分别统计各值的数量,类似下面这样,显而易见的,这种方式肯定是不可行的,因为字段的值一多,那就要多写很多遍下面的语句,不用测都知道又啰嗦又耗时。 SELECT count(*) FROM users WHERE channel = 0; 所以查遍网络找到了很多其他的可行方法,但是呢,方式一多,选择哪个方式又是一头疼事情,那么接下来就简单的比较下各方式的执行情

一几文的编程学习笔记。 2万+

CNC数控机床数据采集,CNC数据采集 设备联网 车间数字化

cnc数据采集 cnc机床数据采集 免受权采集 设备联网

weixin_38175277的博客 2772

【C#&Mysql】最全C#连接Mysql: 读、增、删、改、查

最近在研究C#连接Mysql,并实现数据的读写,发现里面还有很多需要注意的,研究过程也遇到不少问题,现在将本人研究的成果分享出来,供需要的朋友学习,最终界面如下图所示,左边为数据写入的功能区(将datagridview控件的数据写入到数据库文件中),右边为数据读取与编辑、添加、查询、删除功能区(将数据库文件读取到datagridview控件中,并实现datagridview控件的编辑能够映射到数据库文件中同步更改)。............

qq_29794385的博客 1万+

Java:PriorityQueue详解——从零基础到应用

看了网上的详解,我反是一篇没看懂,都是什么垃圾玩意也发出来,无语,我自己根据这两天的学习总结出来了下面这些干货,我就是这么学会的,大家要是零基础看肯定木问题。

流楚丶格念的博客 6142

innovus:InstPad、CellPad 、module padding、clock cell halo

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?site_num指的是padding的大小以site宽度为单位。

m0_61544122的博客 2024

C#读取MySQL数据

尝试从MySQL中读取数据。

huxyc的博客 3136

Web3:Ubuntu系统 使用Docker-compose方式部署blockscout浏览器&配置版本-v5.2.3-beta+charts图表

详细介绍了在Ubuntu 23.04系统上部署Blockscout浏览器的步骤,以及过程中遇到的问题进行一一解决。

鄙人kunzhi96,感恩遇见! 2万+

C# 连接MySQL数据库

步骤:

喵毛的博客 3万+

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

mysql c# 执行多条sql语句_C# 操作MySQL数据库, ExecuteReader()方法执行T-SQL语句, 游标读取数据...

C# 操作My SQL数据库需要引用"MySql.Data", 可通过两种方式获取。1、从NuGet下载"Install-Package MySql.Data -Version 6.8.7"推荐使用方式一,从NuGet上直接获取所需dll,方便快捷。C# 操作MySQL数据库, ExecuteReader()方法执行T-SQL语句, 游标读取数据--ExecuteNonQuery()对连接执行 T...

weixin_39892447的博客 552

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

c#中mysql远程连接方法及实例

#region 远程数据库连接测试 //需给远程数据库分配所有权限 // cmd命令: grant all privileges on *.* to 'root'@'%' with grant option; string connStr = "Database=MyDataBase;Data Source=" + "192.168.2.206" + ";port=3306;User Id=root;Password...

u011555996的博客 4737

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

C#如何连接MySQL进行操作(详细教程篇)

C#如何连接MySQL进行操作 1:引入MySql.Data.dll 例如小编是vs2017,创建工程之后,添加应用,选择工程,点击下面的引用,右击打开,选择添加引用 2:如何找到自己的MySql.Data.dll,答案就是自己安装MySQL的安装路径下,找到后选择添加 3:就是直接贴代码了,这里是查询账号密码,以及插入账号密码(注意:更改个人的数据名字以及表密码等) using System...

Tang_AHMET的博客 5690

mysql executereader_C# 操作MySQL数据库, ExecuteReader()方法参数化执行T-SQL语句, 游标读取数据...

C# 操作My SQL数据库需要引用"MySql.Data", 可通过两种方式获取。1、从NuGet下载"Install-Package MySql.Data -Version 6.8.7"推荐使用方式一,从NuGet上直接获取所需dll,方便快捷。C# 操作MySQL数据库, ExecuteReader()方法参数化执行T-SQL语句, 游标读取数据--ExecuteNonQuery()对连接执...

weixin_28955629的博客 1088

mysql datagridview_C#从MySQL读取数据到DataGridView

一、安装MySql Connector二、引用MySql.Data.dll并重新生成解决方案三、添加using MySql.Data.MySqlClient,再次生成解决方案,如果有问题,考虑所引入的MySql.Data.dll版本是否不对,尝试其它的版本,直到生成解决方案成功。四、读取数据库表格数据string MyConnectionString = "Server=localhost;Dat...

weixin_39603799的博客 648

C#中的MySQL

using MySql.Data.MySqlClient; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CSharpCallMySql { class Program { ...

U3DAndroid的博客 463

C#写一套最全的MySQL帮助类(包括增删改查)

介绍说明:这个帮助类包含了六个主要的方法:ExecuteNonQuery、ExecuteScalar、ExecuteQuery、ExecuteQuery(泛型)、Insert、Update和Delete。其中,ExecuteNonQuery用于执行不返回结果集的SQL语句;ExecuteScalar用于执行一个查询,并返回结果集中第一行的第一列;ExecuteQuery用于执行一个查询,并返回结果集;ExecuteQuery(泛型)用于执行一个查询,并将结果集映射到一个对象列表;

weixin_71742083的博客 5115

dataset存入mysql_C#从数据库读取数据到DataSet并保存到xml文件的方法

本文实例讲述了C#从数据库读取数据到DataSet并保存到xml文件的方法。分享给大家供大家参考。具体实现方法如下:DataSet有一个WriteXml方法可以直接将数据保存到xml文件using System;using System.Data;using System.Xml;using System.Data.SqlClient;using System.IO;public class Te...

weixin_30019895的博客 446

c# 操作mysql,C#操作MySQL数据库

必要准备:SQLyog(MySQL数据库可视化辅助软件) 提取码uq2v。MySQL数据库下载提取码:n76g。一、综述根据操作数据库时是否需要一直连接的特点,将行为分为两种。第一种是对数据库始终保持连接状态;第二种是先将数据暂存于内存中,操作是对内存的数据,操作完成后,更新数据库,如图1所示。 图1 操作数据库的方式 二、长连数据库(1)测试界面,如图2所示。 图2 测试界面 (2)示例代...

weixin_33514140的博客 1237

c#-Entiry Framework core-读取数据

数据库结构 参照上一篇:c#-连接mysql数据库 运行效果 代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using MySql.Data.MySqlClient; using Mic...

xie__jin__cheng的博客 311
上一篇: nodejs -- for循环里面套异步解决 -- 类似并发
下一篇: c#--写windows 服务
dongmelon
博客等级 码龄10年 18粉丝 78原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值