VS2019 C# MySQL 学生信息增删改查(一、增删)

VS2019 C# MySQL 学生信息增删改查

由于刚刚学习VS2019,入手的第一个例子是编写一个简单的增删改查。这里,我以学生信息为例,进行详细的过程描述以及代码实现。

一、 新建一个Windows窗体应用程序

1、创建新项目界面,如下图所示。
在这里插入图片描述
2、更改项目名称,当然不修改也可以。我这里的是“StudentInfoSystem”;项目存放位置路径根据自己需要进行更改;“将解决方案和项目放在同一目录中”前面的勾选框,选不选都可以;点击“创建”,如下图所示。
在这里插入图片描述
二、前期准备工作

1、将Form1属性中的Text的“Form1”改为“学生管理系统首页”,并从工具箱中拖入4个Button按钮放在设计界面上,如下图所示。分别将“button1”、“button2”、“button3”、“button4”属性中的(Name)改为“BtnZeng”、“BtnShan”、“BtnGai”、“BtnCha”,并分别将其属性中的Text改为“增加”、“删除”、“修改”、“查看”。
在这里插入图片描述
在这里插入图片描述
2、(1)鼠标选中“StudentInfoSystem”,右击选中“添加”,找到“窗体(Windows窗体)”,如下图所示。
在这里插入图片描述
(2)增加4个Form设计界面,分别将其属性中的(Name)改为FormZengJia、FormShanChu、FormXiuGai、FormChaKan,并分别修改其属性Text为“增加”、“删除”、“修改”、“查看”,如下图所示。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、分别双击增加、删除、修改、查看四个按钮,将4个设计界面连接到主界面上,添加代码,如下。

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void BtnZeng_Click(object sender, EventArgs e)
        {
            FormZengJia zengJia = new FormZengJia();
            zengJia.Show();
        }
        private void BtnShan_Click(object sender, EventArgs e)
        {
            FormShanChu shanChu = new FormShanChu();
            shanChu.Show();
        }
        private void BtnGai_Click(object sender, EventArgs e)
        {
            FormXiuGai xiuGai = new FormXiuGai();
            xiuGai.Show();
        }
        private void BtnCha_Click(object sender, EventArgs e)
        {
            FormChaKan chaKan = new FormChaKan();
            chaKan.Show();
        }
    }

三、建立数据库

我用的是MySQL。

1、新建数据库,如下图所示。
在这里插入图片描述
2、数据库表设计,如下图所示。
在这里插入图片描述
四、增

1、在FormZengJia界面中拖入控件,如下图所示。
在这里插入图片描述
2、修改TextBox以及Button中的相应属性,如下图所示。
在这里插入图片描述
3、双击“增加一条记录”按钮,进入代码界面,首先的工作就是引入,右击“引用”,选择“添加引用 | 浏览”,找到自己安装MySQL文件中的“MySql.Data.dll”,如下图所示。
在这里插入图片描述

在这里插入图片描述
4、在头文件中将“using MySql.Data.MySqlClient;”引入进来,如下。

using MySql.Data.MySqlClient;

5、代码如下:

private void BtnZeng_Click(object sender, EventArgs e)
        {
            String connectStr = "server=localhost;database=studentinfosystem;user=root;password=123456;port=3306;charset=utf8";
            //server=127.0.0.1或localhost。database是我的数据库名,studentinfosystem是新建的数据库名。
            //我这里的user是root,密码是123456(安装MySQl时自己设置的密码)。端口号port一般都是3306。
            //charset字符集一定要加,不加的话,虽然连接成功,但如果含有中文,就显示不了中文内容。
            MySqlConnection conn = new MySqlConnection(connectStr);
            conn.Open();//打开通道,建立连接

            //下面主要就是条件判断
            if (tbno.Text == "")
            {
                MessageBox.Show("学号不能为空");
            }
            else if (tbname.Text == "")
            {
                MessageBox.Show("姓名不能为空");
            }
            else if (tbno.Text != "" && tbname.Text != "")
            {
                string str = "";
                if (tbdept.Text.Trim().Length == 0 && tbbirth.Text.Trim().Length == 0)
                {
                    str = "insert into info(学号,姓名) values('" + tbno.Text + "','" + tbname.Text + "')";//info是数据库表名
                }
                else if (tbdept.Text.Trim().Length == 0 && tbbirth.Text.Trim().Length > 0)
                {
                    str = "insert into info(学号,姓名,出生日期) values('" + tbno.Text + "','" + tbname.Text + "','" + tbbirth.Text + "')";
                }
                else if (tbdept.Text.Trim().Length > 0 && tbbirth.Text.Trim().Length == 0)
                {
                    str = "insert into info(学号,姓名,专业) values('" + tbno.Text + "','" + tbname.Text + "','" + tbdept.Text + "')";
                }
                else if (tbdept.Text.Trim().Length > 0 && tbbirth.Text.Trim().Length > 0)
                {
                    str = "insert into info(学号,姓名,专业,出生日期) values('" + tbno.Text + "','" + tbname.Text + "','" + tbdept.Text + "','" + tbbirth.Text + "')";
                }

                try
                {
                    MySqlCommand cmd = new MySqlCommand(str, conn);
                    cmd.ExecuteNonQuery();
                }
                catch (MySqlException ex)
                {
                    MessageBox.Show(ex.Message);
                }

                int s = 1;
                if (s == 1)
                {
                    MessageBox.Show("成功增加一条记录");
                    tbno.Clear();
                    tbname.Clear();
                    tbdept.Clear();
                    tbbirth.Clear();//清空TextBox中的数据
                }
            }
            conn.Close();
        }

6、点击“启动”,添加一条记录看看效果,显示“成功增加一条记录”,回到数据库表中,刷新一下,发现刚刚添加的记录已经成功保存到数据库表中了,如下图所示。
在这里插入图片描述
在这里插入图片描述
五、删

1、在FormShanChu界面中拖入控件,更改相应的属性,如下图所示。
在这里插入图片描述
2、双击“删除一条记录”按钮,进入代码界面,在头文件中将“using MySql.Data.MySqlClient;”引入进来。

3、代码如下:

private void BtnDelete_Click(object sender, EventArgs e)
        {
            String connectStr = "server=localhost;database=studentinfosystem;user=root;password=123456;port=3306;charset=utf8";
            //server=127.0.0.1或localhost。database是我的数据库名,studentinfosystem是新建的数据库名。
            //我这里的user是root,密码是123456(安装MySQl时自己设置的密码)。端口号port一般都是3306。
            //charset字符集一定要加,不加的话,虽然连接成功,但如果含有中文,就显示不了中文内容。
            MySqlConnection conn = new MySqlConnection(connectStr);
            conn.Open();//打开通道,建立连接

            //下面主要是条件判断
            string str = "";
            if (tbno.Text.Trim().Length == 0 && tbname.Text.Trim().Length == 0)
            {
                MessageBox.Show("请输入要删除的学号或姓名!");
            }
            else if (tbno.Text.Trim().Length > 0 && tbname.Text.Trim().Length == 0)
            {
                str = "delete from info where 学号='" + tbno.Text + "'";//按“学号”删除
            }
            else if (tbno.Text.Trim().Length == 0 && tbname.Text.Trim().Length > 0)
            {
                str = "delete from info where 姓名='" + tbname.Text + "'";//按“姓名”删除
            }
            else if (tbno.Text.Trim().Length > 0 && tbname.Text.Trim().Length > 0)
            {
                str = "delete from info where 学号='" + tbno.Text + "'and 姓名='" + tbname.Text + "'";//按“学号+姓名”删除
            }

            try
            {
                MySqlCommand cmd = new MySqlCommand(str, conn);
                cmd.ExecuteNonQuery();
            }
            catch (MySqlException ex)
            {
                MessageBox.Show(ex.Message);
            }

            int s = 1;
            if (s == 1)
            {
                MessageBox.Show("删除成功");
                tbno.Clear();
                tbname.Clear();//清空
            }
            conn.Close();
        }

4、点击“启动”,删除一条记录看看效果,显示“删除成功”,回到数据库表中,刷新一下,发现刚刚删除的记录已经成功删除,如下图所示。
在这里插入图片描述
在这里插入图片描述

  • 29
    点赞
  • 168
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
### 回答1: C语言可以通过调用API来连接数据库进行增删改查操作。 一般常用的数据库有MySQL、Oracle、SQL Server等。以下以MySQL为例来说明: 1. 安装MySQL C连接器 要连接MySQL数据库,需要先安装MySQL C连接器,在Ubuntu Linux环境下,使用以下命令安装:sudo apt-get install libmysqlclient-dev 2. 连接MySQL数据库 在连接MySQL数据库之前,需要先定义一个MYSQL结构体来存储连接信息,例如: MYSQL mysql; mysql_init(&mysql); mysql_real_connect(&mysql, "localhost", "root", "root", "testdb", 0, NULL, 0); 其中, "localhost"是MySQL服务器的IP地址,"root"是MySQL服务器的用户名, "root"是MySQL服务器的密码,"testdb"是要连接的数据库名。 3. 增加数据 使用MySQL的C API可以很方便地执行增删改查操作,以下是一个添加数据的例子: char query[1000]; sprintf(query, "insert into student(name, age) values('%s', %d)", "张三", 18); mysql_query(&mysql, query); 其中,%s和%d是占位符,可以用具体的值去替换。这里是将一个名为“张三”的学生信息添加到名为“student”的表中。 4. 删除数据 与增加数据类似,删除数据也很简单。以下是一个删除数据的例子: char query[1000]; spintf(query, "delete from student where id=%d", 3); mysql_query(&mysql, query); 其中,id=3的学生将被删除。 5. 修改数据 以下是一个修改数据的例子: char query[1000]; sprintf(query, "update student set name='%s' where id=%d", "李四", 4); mysql_query(&mysql, query); 其中,id=4的学生的姓名将被修改为“李四”。 6. 查询数据 以下是一个查询数据的例子: char query[1000]; sprintf(query, "select * from student"); mysql_query(&mysql, query); MYSQL_RES *result = mysql_store_result(&mysql); int num_fields = mysql_num_fields(result); MYSQL_ROW row; while ((row = mysql_fetch_row(result))) { for (int i = 0; i < num_fields; i++) { printf("%s ", row[i] ? row[i] : "NULL"); } printf("\n"); } 以上是一个简单的查询数据的例子,它将名为“student”的表中的所有记录都输出到控制台上。 总结 通过MySQL C API,可以在C语言中方便地连接MySQL数据库,并对其进行增删改查操作。这种方式比较灵活,但是比较底层,需要编写大量的代码来实现相对比较简单的操作。对于一般的应用程序,可以考虑使用ORM框架来简化代码编写。 ### 回答2: 连接数据库并进行增删改查是数据库应用的基础操作,以下是一个简单的步骤如下: 1. 安装数据库:首先需要安装合适的数据库服务,比如MySQL、Oracle、SQLServer等等。安装完毕后启动数据库服务。 2. 连接数据库:在启动数据库服务后,使用编程语言(如Java、Python、C#等等)提供的API接口连接到数据库中。 3. 编写数据操作代码:连接数据库后,可以对数据库进行数据查询、数据插入、数据更新、数据删除等等操作。编写代码时需要使用SQL语句或ORM框架。 4. 运行代码:将编写好的代码运行程序,程序将会连接到数据库并执行指定的数据操作。 5. 验证结果:程序执行完成后,可以查看操作是否执行成功,在数据库中查看对应的数据是否已经操作成功。 需要注意的是,每个数据库软件有不同的连接串、驱动及API,具体使用方法需要参考各自的API文档。此外,为了保证数据的安全性,从编写数据操作代码到运行代码,要确保代码没有漏洞,防止黑客利用SQL注入等攻击获取数据,这是数据库应用开发者需要注意的问题。 ### 回答3: 在进行数据库操作之前,我们需要先通过编程语言提供的库或框架连接到数据库。在c语言中,我们可以使用MySQL自带的C API或第三方库,如libmysqlclient等。 连接数据库的步骤一般为:初始化MySQL库、获取连接句柄、设置连接选项、建立连接等。连接成功后,就可以进行增删改查操作了。 增加数据可以使用SQL语句INSERT INTO,将新数据插入到指定的表中。 删除数据可以使用SQL语句DELETE FROM,将指定条件的数据从表中删除。 修改数据可以使用SQL语句UPDATE,根据指定条件修改表中的数据。 查询数据可以使用SQL语句SELECT,根据条件查询表中的数据,并将结果返回给程序处理。 通常是先在c程序中构造SQL语句,再通过MySQL提供的函数进行执行和处理结果。需要注意的是,在进行数据库操作时应充分考虑数据安全问题,如避免SQL注入攻击等问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值