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 数据库。如果你有更具体的需求或遇到问题,请随时提问!

相关推荐
凉拌青瓜哈10 分钟前
DVWA-LOW级-SQL手工注入漏洞测试(MySQL数据库)+sqlmap自动化注入-小白必看(超详细)
mysql·安全·网络安全
张先shen1 小时前
亿级流量下的缓存架构设计:Redis+Caffeine多级缓存实战
数据库·redis·缓存
二楼后座。1 小时前
Golang操作MySQL json字段优雅写法
mysql·golang·json
~ 小团子1 小时前
每日一SQL 【各赛事的用户注册率】
数据库·sql
llm2009092 小时前
Jmeter的JDBC数据库连接
数据库·jmeter
lilian1292 小时前
linux系统mysql性能优化
linux·运维·mysql
betazhou2 小时前
SQL server之版本的初认知
数据库·oracle·goldengate·sql server·ogg·gdr
superonion06202 小时前
【DB2】load报错SQL3501W、SQL3109N、SQL2036N
数据库
~ 小团子2 小时前
每日一SQL 【每月交易 I】
数据库·sql
apihz3 小时前
VM虚拟机全版本网盘+免费本地网络穿透端口映射实时同步动态家庭IP教程
android·服务器·开发语言·网络·数据库·网络协议·tcp/ip