找回密码
 立即注册

QQ登录

只需一步,快速开始

工控课堂 首页 工控文库 上位机编程 查看内容

C# 操作MySQL数据库, 参数化执行T-SQL语句, 将记录结果填充到DataSet中 ...

2021-11-27 19:32| 发布者: gkket| 查看: 807| 评论: 0

摘要: C# 操作My SQL数据库需要引用"MySql.Data", 可通过两种方式获取。1、从NuGet下载"Install-Package MySql.Data -Version 6.8.7"2、手动下载并添加引用"MySql.Data.dll",官网地址:https://dev.mysql.com/downloads/c ...

C# 操作My SQL数据库需要引用"MySql.Data", 可通过两种方式获取。

1、从NuGet下载"Install-Package MySql.Data -Version 6.8.7"

2、手动下载并添加引用"MySql.Data.dll",官网地址:https://dev.mysql.com/downloads/connector/net/

推荐使用方式一,从NuGet上直接获取所需dll,方便快捷。


C# 操作MySQL数据库, 参数化执行T-SQL语句, 将记录结果填充到DataSet中


--ExecuteNonQuery()
对连接执行 Transact-SQL 语句并返回受影响的行数,如果SQL语句是对数据库的记录进行操作(如记录的增加、删除和更新),那么方法将返回操作所影响的记录条数。


--ExecuteScalar()
执行查询,并返回查询所返回的结果集中第一行的第一列。忽略其他列或行。该方法所返回的结果为object类型,在使用之前必须强制转换为所需的类型。


--ExecuteReader()
将 CommandText 发送到 Connection,并生成 SqlDataReader。DataReader对象提供了游标形式的读取方式,当从结果行中读取了一行,则游标会继续读取到下一行。通过read方法可以判断数据是否还有下一行,如果存在数据,则继续运行返回true,如果没有数据,则返回false。


创建MySQL数据库、数据表:

#创建数据库CREATE DATABASE IF NOT EXISTS test_db;  #使用数据库USE test_db; #创建用户表DROP TABLE IF EXISTS users;CREATE TABLE users(    id int unsigned NOT NULL AUTO_INCREMENT UNIQUE,#主键    name varchar(50) NOT NULL,#姓名    sex varchar(10),#性别    PRIMARY KEY(name));INSERT INTO users(name,sex) VALUES ('Alice','Female');INSERT INTO users(name,sex) VALUES ('Amy','Female');INSERT INTO users(name,sex) VALUES ('Bruce','Male');

C#代码:

using System;using System.Data;using MySql.Data.MySqlClient; namespace MySqlDemo{    class Program    {        static void Main(string[] args)        {            string connectionString = "server=127.0.0.1;port=3306;database=test_db;charset=utf8;user id=root;password=123456;pooling=false;";            string sqlstring = "SELECT * FROM users WHERE sex=@sex;";             using (MySqlConnection conn = new MySqlConnection(connectionString))            {                using (MySqlCommand cmd = new MySqlCommand())                {                    conn.Open();                    cmd.Connection = conn;                    cmd.CommandText = sqlstring;                    cmd.CommandType = System.Data.CommandType.Text;                     // 绑定参数, 方式一                    cmd.Parameters.AddWithValue("@sex", "Male");                     //// 绑定参数, 方式二                    //cmd.Parameters.Add("@sex", MySqlDbType.VarChar);                    //cmd.Parameters["@sex"].Value = "Female";                     try                    {                        using (DataSet ds = new DataSet())                        {                            using (MySqlDataAdapter da = new MySqlDataAdapter(cmd))                            {                                da.Fill(ds);                            }                            // return ds;                        }                    }                    catch                    {                        throw;                    }                }            }             Console.Read();        }    }}
关注公众号,加入500人微信群,下载100G免费资料!
发表评论

最新评论

热门文章
关闭

站长推荐上一条 /1 下一条

QQ|手机版|免责声明|本站介绍|工控课堂 ( 沪ICP备20008691号-1 )

GMT+8, 2025-12-23 02:26 , Processed in 0.064986 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

返回顶部