C# winform 连接mysql数据库(navicat)

1.解决方案资源管理器->右键->管理NuGet程序包->搜索, 安装Mysql.Data

2.解决方案资源管理器->右键->添加->引用->浏览->

C:\Program Files (x86)\MySQL\MySQL Installer for Windows

->选择->MySql.Data.dll

3.解决方案资源管理器->右键->添加->新建项->类->取名Dao(类名可以改)->加入代码

 public MySqlConnection sc;//数据库连接对象public MySqlConnection connect()//连接数据库{string str = String.Format("server=localhost;uid=root;pwd=123456;database=Book;charset=utf8");sc = new MySqlConnection(str);sc.Open();return sc;}public MySqlCommand command(string sql)//执行一条sql语句{MySqlCommand cmd = new MySqlCommand(sql, connect());return cmd;}public int Excute(string sql)//获取执行sql语句后 数据库表中数据条数的更新数量{return command(sql).ExecuteNonQuery();}public MySqlDataReader read(string sql)//读取数据库中的数据{return command(sql).ExecuteReader();}public void DaoClose()//关闭数据库{sc.Close();}

加入代码

using MySql.Data.MySqlClient;

server=服务器名;uid=用户名;pwd=密码;database=数据库;charset=utf8(可改为其它的编码)。

其中charset防止中文数据的插入会在数据库表中乱码显示。

Dao类文件完整代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Data.SqlClient;
using System.Data;
using MySql.Data.MySqlClient;namespace ManageBook
{class Dao{public MySqlConnection sc;//数据库连接对象public MySqlConnection connect()//连接数据库{string str = String.Format("server=localhost;uid=root;pwd=123456;database=Book;charset=utf8");sc = new MySqlConnection(str);sc.Open();return sc;}public MySqlCommand command(string sql)//执行一条sql语句{MySqlCommand cmd = new MySqlCommand(sql, connect());return cmd;}public int Excute(string sql)//获取执行sql语句后 数据库表中数据条数的更新数量{return command(sql).ExecuteNonQuery();}public MySqlDataReader read(string sql)//读取数据库中的数据{return command(sql).ExecuteReader();}public void DaoClose()//关闭数据库{sc.Close();}}
}

向数据库中插入数据,注册例子

//注册按钮事件private void btnLogon_Click(object sender, EventArgs e){//判读注册时所填入的信息是否有空项if (txtIDCard.Text == "" || txtName.Text == "" || txtTel.Text == "" || txtPwd.Text == "" || txtAgainPwd.Text == "" || cobSex.Text == ""){//提示:有空项MessageBox.Show("有空项","消息",MessageBoxButtons.OK,MessageBoxIcon.Warning);return;}//注册   获取数据库中账号的最大值  然后加  1Dao dao = new Dao();dao.connect();//连接并打开数据库string sql = "select MAX(Uid) from T_User";MySqlDataReader reader = dao.read(sql);reader.Read();int id = int.Parse(reader[0].ToString())+1;//注册的账号string name = txtName.Text;string idCard = txtIDCard.Text;string tel = txtTel.Text;string sex = cobSex.Text;string pwd = txtPwd.Text;//进行添加sql = $"insert into T_User values('{id}','{name}','{pwd}','{sex}','{idCard}','{tel}','1')";if (dao.Excute(sql) > 0){//注册成功MessageBox.Show("注册成功", "消息", MessageBoxButtons.OK, MessageBoxIcon.Information);}else{MessageBox.Show("注册失败", "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning);}reader.Close();dao.DaoClose();}

如果sc.Open();打开数据库报错时,试试删除引用MySql.Data,再重新添加。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/833346.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入剖析Tomcat(七) 日志记录器

在看原书第六章之前,一直觉得Tomcat记日志的架构可能是个“有点东西”的东西。在看了第六章之后呢,额… 就这?不甘心的我又翻了翻logback与新版tomcat的源码,额…,日志架构原来也没那么神秘。本篇文章先过一遍原书内容…

Github 2024-05-07 开源项目日报 Tp10

根据Github Trendings的统计,今日(2024-05-07统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量TypeScript项目4Jupyter Notebook项目2Python项目1Batchfile项目1非开发语言项目1Java项目1HTML项目1C#项目1从零开始构建你喜爱的技术 创建周期…

k8s 资源文件参数介绍

Kubernetes资源文件yaml参数介绍 yaml 介绍 yaml 是一个类似 XML、JSON 的标记性语言。它强调以数据为中心,并不是以标识语言为重点例如 SpringBoot 的配置文件 application.yml 也是一个 yaml 格式的文件 语法格式 通过缩进表示层级关系不能使用tab进行缩进&am…

金三银四面试题(二十五):策略模式知多少?

什么是策略模式 策略模式(Strategy Pattern)是一种行为型设计模式,旨在定义一系列算法,将每个算法封装到一个独立的类中,使它们可以互换。策略模式让算法的变化独立于使用它们的客户端,使得客户端可以根据…

二叉搜索树相关

二叉搜索树 定义:对二叉搜索树的一些操作基本结构Insert操作Find操作Erase操作 InOrder遍历二叉树操作模拟字典模拟统计次数 定义: 二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树:若它的左子树不为空&a…

MacOS快速安装FFmpeg,并使用FFmpeg转换视频

前言:目前正在接入flv视频流,但是没有一个合适的flv视频流地址。网上提供的flv也都不是H264AAC(一种视频和音频编解码器组合),所以想通过fmpeg来将flv文件转换为H264AAC。 一、MacOS环境 博主的MacOS环境(…

初始C++(一)

目录 前言: 命名空间: 总结: 前言: C语言学好了,现在当然要进阶了,那么就是从C开始。 C兼容C,支持其中90%的语法。可能有很多同学听说过C#,C#和C没有关系,是微软研究出…

Mintegral引领短剧行业新风尚:广告变现策略助力出海应用高效增长

短剧,一颗正在冉冉升起的新星,如今成为了影视行业的新风口。《2023短剧行业研究报告》显示,2023年短剧市场规模达到373.9亿元,同比增长267.65%,预计2024年将超过500亿元。近年来,政策出台、供需促进及应用出…

什么是Facebook付费广告营销?

Facebook作为全球最大的社交平台之一,成为了跨境卖家不可或缺的营销阵地。它不仅拥有庞大的用户基数,还提供了丰富的广告工具和社群互动功能,让商家能够精准触达目标市场,提升品牌影响力。云衔科技通过Facebook付费广告营销的专业…

ODOO17数据库安全策略一(ODOO17 Database Security Policy I)

ODOO17作为ERP软件,其核心优势在于数据安全。凭借强大的原生安全机制及灵活的配置,确保数据安全无忧: ODOO17, as an ERP software, boasts its significant advantage in exceptional data security performance. It effectively ensures wo…

DirClass

DirClass 通过分析,发现当接收到DirClass远控指令后,样本将返回指定目录的目录信息,返回数据中的远控指令为0x2。 相关代码截图如下: DelDir 通过分析,发现当接收到DelDir远控指令后,样本将删除指定目录…

2024暨南大学校赛热身赛解析

文章目录 Uzi 的真身D 基站建设 Uzi 的真身 分析:本来想使用动态规划算法的,但是由于数据计算过大,导致超时 正确的思想:直接线性遍历字符串,分别统计字符“j”的个数,后面对于统计字符“z”和字符“h” 的…

flutter中固定底部按钮,防止键盘弹出时按钮跟随上移

当我们想要将底部按钮固定在底部,我们只需在Widget中的Scaffold里面加一句 resizeToAvoidBottomInset: false, // 设置为false,固定页面不会因为键盘弹出而移动 效果图如下

[法规规划|数据概念]金融行业数据资产和安全管理系列文件解析(2)

“ 金融行业在自身数据治理和资产化建设方面一直走在前列。” 一直以来,金融行业由于其自身需要,都是国内开展信息化建设最早,信息化程度最高的行业。 在当今数据要素资产化的浪潮下,除了行业自身自身数据治理和资产化建设方面&am…

蓝牙模块HC-08+WIFI模块ESP-01S

蓝牙模块 又叫蓝牙串口模块。 串口透传技术:透传即透明传送,是指在数据的传输过程中,通过无线的方式使这组数据不发生任何形式的改变,仿佛传输过程是透明的一样,同时保证传输的质量,原封不动地道了最终接收…

Oracle sqlnet.ora配置文件

一、作用 这里可以看官网解释Parameters for the sqlnet.ora File (oracle.com) 该文件是配置文件配置文件。它驻留在客户端计算机和数据库服务器上。配置文件使用此文件进行存储和实现。可以使用文件中的访问控制参数配置数据库服务器。这些参数根据协议.sqlnet.orasqlnet.o…

项目经理【人】任务

系列文章目录 【引论一】项目管理的意义 【引论二】项目管理的逻辑 【环境】概述 【环境】原则 【环境】任务 【环境】绩效 【人】概述 【人】原则 【人】任务 一、定义团队的基本规则&塔克曼阶梯理论 1.1 定义团队的基本规则 1.2 塔克曼阶梯理论 二、项目经理管理风格 …

CCE云原生混部场景下的测试案例

背景 企业的 IT 环境通常运行两大类进程,一类是在线服务,一类是离线作业。 在线任务:运行时间长,服务流量及资源利用率有潮汐特征,时延敏感,对服务SLA 要求高,如电商交易服务等。 离线任务&…

Pycharm链接远程服务器GPU跑深度学习模型

我们在学习深度学习时,常常会遇到自己笔记本电脑性能不够,显卡性能低,在运行深度学习项目的时候很浪费时间。如果实验室有可用于深度学习的服务器的话,会大大减少代码执行时间,服务器上的GPU算力一般都很高。 本文主要…

【IP:Internet Protocol,子网(Subnets),IPv6:动机,层次编址:路由聚集(rout aggregation)】

文章目录 IP:Internet Protocol互联网的的网络层IP分片和重组(Fragmentation & Reassembly)IP编址:引论子网(Subnets)特殊IP地址IP 编址: CIDR子网掩码(Subnet mask)转发表和转发…