我不熟悉使用Data Reader,我需要以下代码的帮助,我想从数据库中检索单个数据.MySqlDataAdapter data = new MySqlDataAdapter(cmd);conn.Open();DataTable dt = new DataTable();data.Fill(dt);gridView1.DataSource ...
我不熟悉使用Data Reader,我需要以下代码的帮助,我想从数据库中检索单个数据.
MySqlDataAdapter data = new MySqlDataAdapter(cmd);
conn.Open();
DataTable dt = new DataTable();
data.Fill(dt);
gridView1.DataSource = dt;
int retrievedValue = 0;
using (MySqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
if ((int)reader["order_status"] == 0)
{
retrievedValue = (int)reader.GetValue(0);
GridView View2 = sender as GridView;
e.Appearance.BackColor = Color.Green;
e.Appearance.BackColor2 = Color.ForestGreen;
}
}
}
解决方法:
reader [“order_status”]返回对象,因为你告诉它已经是整数,你需要先将它强制转换为int.
你需要使用== operator,因为它是一个相等运算符. = operator是一个赋值运算符.
if ((int)reader["order_status"] == 0)
或者您可以将GetInt32 method与其基于零的列号一起使用.假设它是您的查询返回的第一列,您可以像使用它一样使用它;
if(reader.GetInt32(0) == 0)
顺便说一下,如果你只想得到单个值,我强烈怀疑你可能想要使用ExecuteScalar方法,因为它是第一行的第一列.然后,您可以将查询结构化为SELECT order_status FROM …等.
沃梦达教程
本文标题为:c# – 使用MySQL数据阅读器
基础教程推荐
猜你喜欢
- 详解C#实现在Excel单元格中应用多种字体格式 2023-06-05
- WPF快速入门教程之绑定Binding 2022-12-31
- C#中List和SortedList的简介 2023-01-06
- C#多线程系列之线程的创建和生命周期 2023-05-21
- WinForm使用DataGridView实现类似Excel表格的查找替换功能 2023-04-27
- c# – 如何读取DLL插件中的MEF元数据而不将整个DLL复制到内存中? 2023-09-20
- asp.net core F5 弹出“无法启动进程 **\dotnet.exe” web 服务器请求失败 2023-09-28
- C#使用正则表达式 2023-05-31
- 深入理解C#管道式编程 2023-04-22
- c#中(&&,||)与(&,|)的区别详解 2023-02-03