C# WPF入门学习番外篇——C#使用WPF连接MySQL数据库

在 C# 中使用 WPF 连接 MySQL 数据库涉及几个步骤,包括安装必要的库,配置连接字符串,编写代码以执行数据库操作等。下面是一个详细的入门教程,帮助你理解如何在 WPF 应用程序中使用 MySQL 数据库。

1. 安装 MySQL 数据库连接器

首先,你需要安装 MySQL 数据库连接器(MySQL Connector/NET)。你可以通过 NuGet 包管理器安装:

  1. 打开 Visual Studio。

  2. 在解决方案资源管理器中,右键点击你的项目,然后选择"管理 NuGet 程序包"。

  3. 搜索 MySql.Data 并安装该包。

2. 配置连接字符串

连接字符串用于指定数据库连接的信息。以下是一个示例连接字符串:

csharp 复制代码
string connectionString = "Server=localhost;Database=mydatabase;User Id=myusername;Password=mypassword;";

确保替换 localhostmydatabasemyusernamemypassword 为你的数据库服务器地址,数据库名称,用户名和密码。

3. 编写 WPF 界面

创建一个简单的 WPF 界面,例如包含一个按钮和一个文本框,用于显示数据库中的数据。

xml 复制代码
<Window x:Class="WpfApp.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Button Name="btnFetchData" Content="Fetch Data" Width="100" Height="30" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="10" Click="btnFetchData_Click"/>
        <TextBox Name="txtData" Width="400" Height="200" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="10,50,0,0" AcceptsReturn="True" VerticalScrollBarVisibility="Auto"/>
    </Grid>
</Window>

4. 编写后台代码

在 MainWindow.xaml.cs 中,添加以下代码以连接到 MySQL 数据库并执行查询:

csharp 复制代码
using System;
using System.Windows;
using MySql.Data.MySqlClient;

namespace WpfApp
{
    public partial class MainWindow : Window
    {
        string connectionString = "data source=你的IP地址,如果是拿自己的电脑来测试一般都是localhost;database=你的数据库名称;user id=root用户名;password=你的数据库登录密码;pooling=false;charset=utf8";

        public MainWindow()
        {
            InitializeComponent();
        }

        private void btnFetchData_Click(object sender, RoutedEventArgs e)
        {
            FetchDataFromDatabase();
        }

        private void FetchDataFromDatabase()
        {
            try
            {
                using (MySqlConnection conn = new MySqlConnection(connectionString))
                {
                    conn.Open();
                    string query = "SELECT * FROM dayone"; // 使用你实际的表名
                    MySqlCommand cmd = new MySqlCommand(query, conn);
                    MySqlDataReader reader = cmd.ExecuteReader();

                    txtData.Clear();
                    while (reader.Read())
                    {
                        // 使用实际的列名
                        txtData.AppendText(reader["id"].ToString() + Environment.NewLine);

                        txtData.AppendText(reader["name"].ToString() + Environment.NewLine);
                    
                }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error: " + ex.Message);
            }
        }
    }
}

详细说明

  1. 安装 MySQL Connector/NET

    • 使用 NuGet 安装 MySql.Data 包,这个包提供了与 MySQL 服务器通信所需的所有类。
  2. 配置连接字符串

    • Server=localhost: 数据库服务器地址。
    • Database=mydatabase: 要连接的数据库名称。
    • User Id=myusername: 数据库用户名。
    • Password=mypassword: 数据库密码。
  3. 编写 WPF 界面

    • 一个按钮 btnFetchData 用于触发数据库数据的获取操作。
    • 一个文本框 txtData 用于显示从数据库中获取的数据。
  4. 编写后台代码

    • 使用 MySqlConnection 类连接到数据库。
    • 使用 MySqlCommand 类执行 SQL 查询。
    • 使用 MySqlDataReader 类读取查询结果。

注意事项

  • 确保你的 MySQL 服务器正在运行,并且连接字符串中的信息正确。
  • 捕获和处理异常,以便在连接数据库或执行查询时出现问题时,提供有用的错误信息。
  • 根据你的需求修改 SQL 查询和界面布局。

通过上述步骤,你应该能够在 WPF 应用程序中成功连接并使用 MySQL 数据库。如果你有更具体的需求或遇到问题,请随时提问!

相关推荐
AC赳赳老秦8 分钟前
招投标公开数据自动化采集实战:基于 OpenClaw 的定时抓取与业务关键词精准推送
运维·服务器·数据库·自动化·测试用例·deepseek·openclaw
后端优选官1 小时前
上海Agent开发公司:企业级智能体软件的技术架构与落地评估
数据库·人工智能·架构·软件开发·开发经验·上海
JustNow_Man1 小时前
`openspec/config.yaml` 解析与生效机制
数据库
Databend1 小时前
用 QUALIFY 写出更清晰的窗口函数 SQL
数据库·sql·数据分析
数智化管理手记1 小时前
应收应付资金占用过高怎么办?应收应付搭配账龄分析怎么做
大数据·网络·数据库·人工智能·数据挖掘
夜莺悠吟1 小时前
关于对 C# 中 ImplicitUsings,GlobalUsings 的讨论
c#·.net
用户71333585156241 小时前
MySQL - EXPLAIN 执行计划
数据库
这就是佬们吗1 小时前
Python入门③-运算符、条件与循环
开发语言·数据库·vscode·python·pycharm·编辑器
wending-Y1 小时前
Flink 滑动窗口作业 TaskManager RocksDB 状态膨胀 Bug 分析
java·前端·数据库
小大宇2 小时前
mongoDB dump技巧
数据库·mongodb