C# 连接mysql数据库ADO.NET模式, 数据绑定到datagridview控件上,设置部分列隐藏

news/2024/6/17 5:41:00 标签: 数据库, c#, mysql

 /********* C#连接MYSQL数据库的步骤ADO.NET模式:************/
 //1.导入命名空间 MySql.Data.MySqlClient
 //2.创建一个 MySqlConnection 对象,并传入连接字符串。连接字符串包含了数据库的地址、用户名、密码等信息
 //3.调用 MySqlConnection 的 Open() 方法打开数据库连接
 //4.创建一个 MySqlCommand 对象,并传入 SQL 查询语句和 MySqlConnection 对象
 //5.(绑定到datagridview控件本步骤可缺省)调用 MySqlCommand 的 ExecuteReader() 方法执行查询,并返回一个 MySqlDataReader 对象
 //6.创建适配器MySqlDataAdapter
 //7.创建内存中的数据容器DataSet
 //8.将适配器中的数据放置在容器DataSet中
 //9.将容器DataSet中的数据绑定到datagridview控件上
 //10.设置datagridview控件的表的名称为绑定的表名称

using MySql.Data.MySqlClient;  //1.导入命名空间 MySql.Data.MySqlClient
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        /********* C#连接MYSQL数据库的步骤ADO.NET模式:************/
        //1.导入命名空间 MySql.Data.MySqlClient
        //2.创建一个 MySqlConnection 对象,并传入连接字符串。连接字符串包含了数据库的地址、用户名、密码等信息
        //3.调用 MySqlConnection 的 Open() 方法打开数据库连接
        //4.创建一个 MySqlCommand 对象,并传入 SQL 查询语句和 MySqlConnection 对象
        //5.(绑定到datagridview控件本步骤可缺省)调用 MySqlCommand 的 ExecuteReader() 方法执行查询,并返回一个 MySqlDataReader 对象
        //6.创建适配器MySqlDataAdapter
        //7.创建内存中的数据容器DataSet
        //8.将适配器中的数据放置在容器DataSet中
        //9.将容器DataSet中的数据绑定到datagridview控件上
        //10.设置datagridview控件的表的名称为绑定的表名称
        private void button1_Click(object sender, EventArgs e) //连接数据库并查询数据
        {

            try
            {
                MySqlConnection dbConn = new MySqlConnection("Database=test;Data Source=127.0.0.1;port=3306;" + "User Id=root;;SslMode=none;Password=123456;");//2.创建一个 MySqlConnection 对象,并传入连接字符串。连接字符串包含了数据库的地址、用户名、密码等信息
                dbConn.Open(); //3.调用 MySqlConnection 的 Open() 方法打开数据库连接
                string str = "select * from student";
                MySqlCommand cmd = new MySqlCommand(str, dbConn);// 4.创建一个 MySqlCommand 对象,并传入 SQL 查询语句和 MySqlConnection 对象
                MySqlDataAdapter sda = new MySqlDataAdapter(cmd);// 6.创建适配器MySqlDataAdapter
                DataSet ds = new DataSet(); //7.创建内存中的数据容器DataSet
                sda.Fill(ds, "student"); //8.将适配器中的数据放置在容器DataSet中
                dataGridView1.DataSource = ds; //9.将容器DataSet中的数据绑定到datagridview控件上
                dataGridView1.DataMember = "student";//10.设置datagridview控件的表的名称为绑定的表名称
            }
            catch (Exception ex)
            {
            }
        }
       
        private void Form1_Load(object sender, EventArgs e)
        {
            
        }
    }
}

设置datagridview控件属性:

上图所示,为datagridview控件中的设置,目前共设置三处,如图中标记处1,2,3所示

其中标记1表示:将数据库中指定表中的字段(列)的数据与添加到datagridview控件中的列保持一致

标记2表示:datagridview控件中本列中将来要展示的数据与数据库中指定表中的字段(列)的数据名称一致,形成映射关系,若两处信息不一致,在显示时此列显示空白。

标记3表示:该列是否被隐藏。所有列默认均未true(不隐藏),当设置该属性为false后,在显示时此列从数据库中查询到的数据自动隐藏。从而实现了dataGridView1.DataSource查询所有,当设置指定列为隐藏。

使用标记3将最后一列隐藏,运行结果如下图所示:

数据库原始内容如下:


http://www.niftyadmin.cn/n/5037386.html

相关文章

校园网免认证登录的方法-利用udp53端口

原理 (不想了解原理直接点击步骤跳转) 首先想要上网的先决条件就是要有一个属于自己的IP地址,我们的校园网都是链接WIFi后验证身份的,但请注意,这个时候我们已经连接上了学校装的路由器。所以我们先查看在不登录的情况…

[vectoreStore]--内存向量存储组件开发

vectoreStore:该组件通常用来做内存向量存储的,同时利用该存储区获取他的retrieval检索 内存向量存储使用的参数为:文档、embeddings、输出 由于他的输出分为vectoreStore向量库存储、retrieval向量检索器,因此需要拿到他的输出分…

AVL部分功能实现和了解

我先前写过一篇二叉搜索树的博客,在那篇博客中我介绍了二叉搜索树的k结构和kv结构实现法,当时也留了个问题,就是普通的二叉搜索树是有缺陷的,可能会退化为链表,从而使得搜索效率降低为O(n),解决方法是对二叉…

uniapp数据点击的时候将数据存入同一个本地存储中并且最大限度5个

比如你想要存储信息最大限度5个,当然也可以存入更多,更改一下设置即可 让他this.storedData.length > 数值即可 data部分 data() {return {storedData: [], // 用于存储点击获取的数据list: [{ name: 张三, id: 1 },{ name: 李四, id: 2 },{ name: …

提升企业网络安全的重要性:EventLog Analyzer的角色

在今天的数字时代,企业对网络安全的需求愈发迫切。随着互联网的不断发展和企业信息的数字化,网络攻击的威胁也不断增加。为了保护企业数据和系统的完整性,网络安全已经成为每个企业都必须认真对待的重要问题。在这个背景下,我们不…

【TCP】确认应答 与 超时重传

确认应答 与 超时重传 一. 确认应答机制二. 超时重传机制 一. 确认应答机制 确认应答: 保障可靠传输的核心机制。 可靠传输: 不是指传输过去的数据不出错, 也不是指数据一定能传输过去,而是指发送方能够知道接收方是否接收到了数据。确认应答的关键就是接收方收到数…

用了 TCP 协议,就一定不会丢包吗?

表面上我是个技术博主。 但没想到今天成了个情感博主。 我是没想到有一天,我会通过技术知识,来挽救粉丝即将破碎的感情。 掏心窝子的说。这件事情多少是沾点功德无量了。 事情是这样的。 最近就有个读者加了我的绿皮聊天软件,女生&#xff0c…

【亲测有效】解决npm报错:RequestError: unable to verify the first certificate

问题简述 帖主从nodejs官网下载安装nodejs后,发现使用以下命令安装electron会报错 npm install electron报错信息如下: npm ERR! RequestError: unable to verify the first certificate解决方案 网上列举的方案,无外乎: 设置…