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

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

大家好,又见面了,我是你们的朋友全栈君。

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

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

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

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

–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;”;

MySqlConnection conn = new MySqlConnection(connectionString);

MySqlCommand cmd = new MySqlCommand();

try

{

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 = “Male”;

MySqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

while (reader.Read())

{

if (reader.HasRows)

{

Console.WriteLine(reader.GetInt32(0) + ” – ” + reader.GetString(1) + ” – ” + reader.GetString(2));

}

}

}

catch

{

if (conn.State != ConnectionState.Closed)

{

conn.Close();

}

throw;

}

Console.Read();

}

}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/151500.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号