窗体链接数据库

创建一个数据库
复制代码
create database data1220      --创建数据库
go                            --go代表后面的语句是在前面语句执行的基础上进行的
use data1220                  --确定操作数据库对象
go
create table users            --给数据库添加一个表
(
code int identity(1,1) primary key,   --定义一个自增长列,并设为主键     
name varchar(20) not null,         --姓名列,不许为空
pwd varchar(20) not null           --密码列,不许为空
)
insert into users values('zhangsan', 111)  --给数据库中的users表,添加数据
insert into users values('lisi' ,222)
insert into users values('wangwu',333)
insert into users values('zhaoliu',444)

select *from users    --查询数据
delete from users
复制代码

image

通过C#winform程序访问数据库数据

用到的命名空间和变量类型:

using System.Data.SqlClient;

SqlConnection;数据库连接类

SqlCommand;数据库操作类

SqlDataReader:读取 

步骤:

1.建一个登录窗体

image

2.login按钮上触发事件:连接数据库函数

复制代码
//按登录按钮,核对输入的数据
        private void button1_Click(object sender, EventArgs e)
        {            
            //后面拼写查询语句要用到窗体的信息
            string user = textBox1.Text;
            string pwd = textBox2.Text;
            //创建数据库连接类的对象
            SqlConnection con = new SqlConnection("server=.;database=data1220;user=sa;pwd=123");
            //将连接打开
            con.Open();
            //执行con对象的函数,返回一个SqlCommand类型的对象
            SqlCommand cmd = con.CreateCommand();
            //把输入的数据拼接成sql语句,并交给cmd对象
            cmd.CommandText = "select*from users where name='"+user+"'and pwd='"+pwd+"'";

            //用cmd的函数执行语句,返回SqlDataReader对象dr,dr就是返回的结果集(也就是数据库中查询到的表数据)
            SqlDataReader dr = cmd.ExecuteReader();
            //用dr的read函数,每执行一次,返回一个包含下一行数据的集合dr,在执行read函数之前,dr并不是集合
            if(dr.Read())
            {
                //dr[]里面可以填列名或者索引,显示获得的数据
                MessageBox.Show(dr[1].ToString());
            }
           //用完后关闭连接,以免影响其他程序访问
            con.Close();
        }
复制代码

image                 

往数据库添加数据

复制代码
//添加数据
        private void button2_Click(object sender, EventArgs e)
        {
            string user = textBox1.Text;
            string pwd = textBox2.Text;
            //创建数据库连接类的对象
            SqlConnection con = new SqlConnection("server=.;database=data1220;user=sa;pwd=123");
            con.Open();
            //执行con对象的函数,返回一个SqlCommand类型的对象
            SqlCommand cmd = con.CreateCommand();
            //拼写语句
            cmd.CommandText = "insert into users values('"+user+"','"+pwd+"')";
            //增删改用ExecuteNonQuery,会返回一个整型数字
            int count = cmd.ExecuteNonQuery();
            if (count > 0)
            {
                MessageBox.Show("添加成功");
            }
            else
            {
                MessageBox.Show("添加失败");
            }
        }
复制代码

image

修改数据

复制代码
//根据编号修改数据
        private void button4_Click(object sender, EventArgs e)
        {
            string user = textBox1.Text;
            string pwd = textBox2.Text;
            string code=textBox3.Text;
            //创建数据库连接类的对象
            SqlConnection con = new SqlConnection("server=.;database=data1220;user=sa;pwd=123");
            con.Open();
            //执行con对象的函数,返回一个SqlCommand类型的对象
            SqlCommand cmd = con.CreateCommand();
            //拼写语句
            cmd.CommandText = "update users set name='"+user+"',pwd='"+pwd+"' where code="+code;
            //增删改用ExecuteNonQuery,会返回一个整型数字
            int count = cmd.ExecuteNonQuery();
            if (count > 0)
            {
                MessageBox.Show("修改成功");
            }
            else
            {
                MessageBox.Show("修改失败");
            }
            con.Close();
        }
复制代码

imageimage

删除数据

复制代码
private void button3_Click(object sender, EventArgs e)
        {
            string code = textBox3.Text;
            //创建数据库连接类的对象
            SqlConnection con = new SqlConnection("server=.;database=data1220;user=sa;pwd=123");
            con.Open();
            //执行con对象的函数,返回一个SqlCommand类型的对象
            SqlCommand cmd = con.CreateCommand();
            //拼写语句
            cmd.CommandText ="delete from users where code=" + code;
            //增删改用ExecuteNonQuery,会返回一个整型数字
            int count = cmd.ExecuteNonQuery();
            if (count > 0)
            {
                MessageBox.Show("删除成功");
            }
            else
            {
                MessageBox.Show("删除失败");
            }
            con.Close();
        }
复制代码

image                    image

转载于:https://www.cnblogs.com/Claires/p/4330849.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在C#窗体中连接MySQL数据库,可以使用MySql.Data.dll工具包提供的功能。首先,下载并引用该工具包,将其放入项目的引用中。然后,在代码中添加`using MySql.Data.MySqlClient;`语句以引入MySQL相关的命名空间。接下来,可以使用`MySqlConnection`类和相关方法来建立数据库连接、执行SQL语句等操作。例如,可以使用`MySqlConnection`的构造函数来创建一个数据库连接对象,指定连接字符串参数来连接到MySQL数据库。然后,可以使用`MySqlCommand`类来执行SQL语句,`MySqlDataReader`类来读取查询结果等。 参考资料: MySql.Data.dll工具包官网链接: https://pan.baidu.com/s/1duTtl66luyAFePVKNJyWfw 提取码: 5h98 示例代码中的窗体项目可以使用Label、TextBox和Button等控件来实现简单的登录界面。 虽然网络上有许多调用第三方平台插件的聊天类APP,但它们没有独立的数据库及后台,数据量大需要收费,并且安全性得不到保障。如果需要开发自己的即时通讯应用程序,可以使用纯原生开发的方式,利用MySQL数据库和相关技术实现各种功能,如加好友、消息私聊、消息群聊、朋友圈、红包、语音等。 总结: 要在C#窗体中连接MySQL数据库,可以使用MySql.Data.dll工具包提供的功能。首先引入该工具包,然后使用相关类和方法来建立数据库连接、执行SQL语句等操作。注意使用合适的连接字符串和正确的参数配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [C#窗体登录——MySql数据库连接](https://blog.csdn.net/qhsj_001/article/details/109190320)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [独家最新鸽哒im即时通讯系统双端源码下载 (中越双语)带安卓未封装、苹果未封装、PC端(全开源)+部署教程...](https://download.csdn.net/download/2201_75447597/88224257)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值