数据为空不能在空值上调用此方法或属性(使用组合框)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 数据为空不能在空值上调用此方法或属性(使用组合框)

如何解决数据为空不能在空值上调用此方法或属性(使用组合框)?
当您的一个或多个字段包含NULL(dbnull.Value)时,您将无法对其使用GetString。 您需要使用Isdbnull方法检查它们是否为空,然后选择要在文本框中输入的值。通常是一个空字符串

private void comboBox1_SelectedindexChanged(object sender, EventArgs e)
{

string constring = "datasource=localhost;port=3306;username=root;password=root";
string Query = "SELECT * from database.check WHERE patientname IS NOT NULL";
using(MysqLConnection conDataBase = new MysqLConnection(constring))
using(MysqLCommand cmdDataBase = new MysqLCommand(Query, conDataBase))
{
    try
    {
        conDataBase.open();
        using(MysqLDataReader myReader = cmdDataBase.ExecuteReader())
        {
            int namePos = myReader.Getordinal("namethestore");
            int checkerPos = myReader.Getordinal("checkername");
            while (myReader.Read())
            {
                string namethestore = myReader.Isdbnull(namePos) 
                                      ? string.Empty 
                                      : myReader.GetString("namethestore");
                string checkername = myReader.Isdbnull(checkerPos) 
                                      ? string.Empty
                                      : myReader.GetString("checkername");
                this.textBox65.Text = namethestore;
                this.textBox66.Text = checkername;
            }
       }
  }

}
我建议也围绕一次性对象使用using语句。这样可以确保当您不再需要它们时,也可以进行适当的关闭和处理,以防万一。

解决方法
嗨,我在表格中将使用空值来填充组合框。我不确定该怎么做。当我运行以下代码时,出现错误:

数据为空。不能在空值上调用此方法或属性。

我需要帮助,并且是MySQL的新手

编码 :

private void comboBox1_SelectedIndexChanged(object sender,EventArgs e)
{

string constring = "datasource=localhost;port=3306;username=root;password=root";
string Query = "SELECT * from database.check WHERE patientname IS NOT NULL";
MySqlConnection conDataBase = new MySqlConnection(constring);
MySqlCommand cmdDataBase = new MySqlCommand(Query,conDataBase);
MySqlDataReader myReader;
try
{
    conDataBase.Open();
    myReader = cmdDataBase.ExecuteReader();
    while (myReader.Read())
    {
        string namethestore = myReader.GetString("namethestore");
        string checkername = myReader.GetString("checkername");
        this.textBox65.Text = namethestore;
        this.textBox66.Text = checkername;
    }
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message);
}

}

声明:地推任务网所有作品(图片、文字)均由用户自行上传分享,仅供网友学习交流。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
数据可视化 Linux C++
Python GUI编程:Tkinter与PyQt的选择
Python作为一门流行的编程语言,在GUI编程领域也有着非常强大的工具。其中,Tkinter和PyQt是两个备受推崇的GUI库。本文将介绍这两个库的优缺点,并帮助读者决定应该选择哪一个。
|
JSON 中间件 C#
氚云的第三方接口调用| 学习笔记
快速学习氚云的第三方接口调用。
VM 挂起虚拟机后 主机无法ping通虚拟机
VM 挂起虚拟机后 主机无法ping通虚拟机
167 0
|
11月前
|
机器学习/深度学习 算法 安全
从方向导数到梯度:深度学习中的关键数学概念详解
方向导数衡量函数在特定方向上的变化率,其值可通过梯度与方向向量的点积或构造辅助函数求得。梯度则是由偏导数组成的向量,指向函数值增长最快的方向,其模长等于最速上升方向上的方向导数。这两者的关系在多维函数分析中至关重要,广泛应用于优化算法等领域。
818 36
从方向导数到梯度:深度学习中的关键数学概念详解
|
Ubuntu Linux 数据安全/隐私保护
内核实验(七):使用内核KFIFO环形缓冲区机制
本文通过一个内核模块实验,演示了如何在Linux内核中使用KFIFO环形缓冲区机制,包括定义KFIFO、编写驱动程序以及在Qemu虚拟机中进行编译、部署和测试,展示了KFIFO在无需额外加锁的情况下如何安全地在读者和写者线程间进行数据传输。
768 0
内核实验(七):使用内核KFIFO环形缓冲区机制
|
算法
数据结构与算法二:栈、前缀、中缀、后缀表达式、中缀表达式转换为后缀表达式
这篇文章讲解了栈的基本概念及其应用,并详细介绍了中缀表达式转换为后缀表达式的算法和实现步骤。
314 3
|
SQL 数据采集 监控
局域网监控电脑屏幕软件:PL/SQL 实现的数据库关联监控
在当今网络环境中,基于PL/SQL的局域网监控系统对于企业和机构的信息安全至关重要。该系统包括屏幕数据采集、数据处理与分析、数据库关联与存储三个核心模块,能够提供全面而准确的监控信息,帮助管理者有效监督局域网内的电脑使用情况。
166 2
|
算法 搜索推荐 数据挖掘
掌握程序员之剑:解析常见算法与其在生活和工作中的影响
掌握程序员之剑:解析常见算法与其在生活和工作中的影响
223 1
|
数据采集 机器学习/深度学习 算法
「AIGC算法」线性回归模型
线性回归是监督学习经典算法,用于预测连续值。分为简单线性(1个特征)和多元线性(多特征)两种。模型建立涉及数据预处理、特征选择、参数估计和损失函数最小化。Python中可使用`sklearn`库快速实现,例如,创建、训练模型,预测并可视化结果。广泛应用于多个领域。
240 0
【记录】有关接口响应很快,但是在页面渲染的时候发现很慢的问题
【记录】有关接口响应很快,但是在页面渲染的时候发现很慢的问题
365 0