C#作业三——连接数据库
C#连接数据库
一、作业要求
1、请设计一个项目连接到自己的MySQL数据库,数据库包含至少三张表;
2、使用DataGridView控件显示表中的数据
3、实现基本的crud操作
二、功能说明
1.使用VS2022通过NuGet包管理器下载MySql.Data连接mysql数据库
2.使用控件DataGridView进行表中数据的显示。
3.各个部分作用如下:
文本框:
textBox 1、2、3分别填写编号、姓名和年龄信息。
textBox4 显示每次操作所执行的SQL语句。
按钮:
打开连接:出于安全考虑,每次操作后都关闭了数据库连接。故操作前都需要重新打开连接。
查询:查看表中所有数据
增加:根据TextBox中填写的信息向表中插入记录,其中编号不能重复且不为空
删除:根据编号删除记录
修改:根据编号修改记录
4.为方便起见,仅使用一张表进行操作,表结构如下。
三、核心代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;namespace MyDataBase
{public partial class Form1 : Form{private MySqlConnectionStringBuilder builder=new MySqlConnectionStringBuilder();private MySqlConnection connection;public Form1(){InitializeComponent();}//获取连接,每次操作前需要打开连接private void button1_Click(object sender, EventArgs e){builder.UserID = "root";builder.Password = "zz923";builder.Server = "localhost";builder.Database = "dbclass";connection=new MySqlConnection(builder.ConnectionString);connection.Open();}private void read_Click(object sender, EventArgs e){//先清空数据dataGridView1.Rows.Clear();string sql = "select * from c_sharp";textBox4.Text=sql;MySqlCommand cmd = new MySqlCommand(sql, connection);MySqlDataReader reader = cmd.ExecuteReader();//设置dataGridView的列dataGridView1.ColumnCount = 3;dataGridView1.ColumnHeadersVisible = true;//设置字体DataGridViewCellStyle columnHeaderStyle = new DataGridViewCellStyle();columnHeaderStyle.BackColor = Color.Beige;columnHeaderStyle.Font = new Font("Verdana", 10, FontStyle.Bold);dataGridView1.ColumnHeadersDefaultCellStyle = columnHeaderStyle;dataGridView1.Columns[0].Name = "编号";dataGridView1.Columns[1].Name = "姓名";dataGridView1.Columns[2].Name = "年龄";//根据查询结果像DataGridView中添加数据行while (reader.Read()){int index = this.dataGridView1.Rows.Add(); this.dataGridView1.Rows[index].Cells[0].Value = reader.GetInt32("id"); this.dataGridView1.Rows[index].Cells[1].Value = reader.GetString("name"); this.dataGridView1.Rows[index].Cells[2].Value = reader.GetInt32("age"); }connection.Close(); //关闭连接}private void create_Click(object sender, EventArgs e){//字段为字符窜时要加上单引号 ''string sql = "insert into c_sharp values ("+ textBox1.Text+",'"+textBox2.Text + "'" + ","+textBox3.Text+")";excuteNoQuery(sql);}private void delete_Click(object sender, EventArgs e){string sql = "delete from c_sharp where id="+textBox1.Text;excuteNoQuery(sql);}//根据编号修改private void update_Click(object sender, EventArgs e){string sql = "update c_sharp set name="+"'"+textBox2.Text+"'"+",age="+textBox3.Text+" where id="+textBox1.Text;excuteNoQuery(sql);}private void excuteNoQuery(string sql){textBox4.Text = sql;MySqlCommand cmd = new MySqlCommand(sql, connection);cmd.ExecuteNonQuery();connection.Close(); //关闭连接}}
}
四、运行结果
多张表:
查询:
增加操作:
增加结果查询,显然7号记录插入成功了:
删除、修改操作类似。
五、clone地址
gitee仓库地址:https://gitee.com/zzjavac/csharp_work.git
C#作业三——连接数据库相关推荐
- 20165301 预备作业三:Linux安装及命令入门
预备作业三:Linux安装及命令入门 VirtualBox虚拟机的安装 在进行安装之前,原本以为有了娄老师的安装教程会是一件很容易的事情.万万没想到,在自己实际动手操作中,还是遇到了许多困难.通过与同 ...
- 淮海工学院linux实验报告三,作业三 实验报告
作业三 实验报告 网络通信 文件传输 实验一 1-1 实验题目 服务器端和客户端各传递1次字符串.考虑到使用TCP协议,所以传递字符串前先以4字节整数型方式传递字符串长度.连接时服务器端和客户端数据传 ...
- 计算机基础与应用23页思考与实训,《计算机基础与应用》实训作业三
<计算机基础与应用>实训作业(三) 实训练习一.数据库技术基础综合应用 [实训要求] 1.能够建立和维护Access数据库 2.能够使用SQL中的四条基本语句:INSERT.UPDATE. ...
- 深蓝学院《从零开始手写VIO》作业三
深蓝学院<从零开始手写VIO>作业三 深蓝学院<从零开始手写VIO>作业三 1. 代码修改 2. 公式推导 3. 公式证明: 深蓝学院<从零开始手写VIO>作业三 ...
- 2018年秋计算机基础在线作业,《计算机应用基础》2017年的秋学期在线作业三.doc...
<计算机应用基础>2017年的秋学期在线作业三.doc (10页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 14.90 积分 ------ ...
- 计算机仿真作业三,计算机仿真技术作业三.doc
计算机仿真技术作业三.doc 计算机仿真技术作业三 题目:三相桥式全控整流电路仿真 姓名: 班级: 学号: 计算机仿真技术作业三 题目:三相桥式全控整流电路仿真 利用simpowersystems建立 ...
- 20155303狄惟佳预备作业三Linux学习笔记
20155303狄惟佳预备作业三Linux学习笔记 初次接触Ubuntu系统以及Linux内核,了解了其产生的历史,从感性来讲,深深吸引我的是其中蕴含的珍贵的开源精神,以及Stallman等人对&qu ...
- 作业三_C#中的观察者模式解析
作业三_C#中的观察者模式解析 一.观察者模式的理解分析 由于之前没有接触过观察者模式,所以找了一段源码编译运行调试一下.下面是观察者模式用C#模拟实现的示意源码.该段代码模拟了观察者模式的一个运行原 ...
- 奥鹏C语言专科在线作业答案,电子科大12春《C语言(专科)》在线作业三
<C语言(专科)>在线作业三 试卷总分:100 测试时间:-- 试卷得分:100 单选题 .单选题(共 20 道试题,共 100 分.) 得分:100 1. ...
最新文章
- 利用RMAN检测数据库坏块的脚本
- 英特尔CPU控制机制存在隐秘开关 可被黑客利用成为后门
- HTML5关于上传API的一些使用(上)
- 离职盗取代码、倒卖获利800万,北京西二旗程序员被逮捕
- 搭建LAMP架构之Apache2.4.4安装及管理
- mysql dsec_MySql数据库操作命令
- linux方向键ascii_Linux
- 仅为代码实际运行资源付费 解构国内首个函数计算
- 推荐两个不错的前端资源的网站,有好的请继续添加,谢谢!
- Android Framework内核之旅
- CMSSDK功能介绍和关联用户系统
- 「leetcode」452. 用最少数量的箭引爆气球【贪心算法】详细图解
- 通过蓝牙连接进行ActiveSync同步
- 傲腾optane介绍
- 基于TerraExplorer Pro的校园三维浏览系统开发
- C语言用if语句判断规定字符串
- python_discover方法遍历所有执行的用例
- 【OpenCV入门实战】利用电脑前置摄像头进行人脸检测
- Linux快捷键汇总(持续更新)
- 小米10系统版本Android,小米10android11稳定版
热门文章
- 投放无忧!教育、家装、婚摄、旅游等8大热门行业广告投放攻略
- 投影仪的裸眼3D效果
- 固定转向和行进速度下的车辆轨迹计算方法
- 联想拯救者 Ubuntu 20.04 Nvidia GTX1650 显卡驱动安装问题解决
- 百度糯米O2O移动自动化测试实践
- MATLAB学习记录:记录模型/模型截图/参数配置/子系统封装/Mask
- Asp.Net(C#)使用oleDbConnection 连接Excel
- Python random 模块的总结
- python3 + opencv 调用摄像头录像后保存视频
- 【报告分享】“美丽”新视界——从双十一看2021美妆社媒投放新趋势-微播易x中国美妆网(附下载)