精华内容
下载资源
问答
  • 简单在窗口实现数据的增删改查,可用于熟悉treeview、datagridview等
  • 5.31 Winform控件公共属性… 532标签Labe) 01 533文本框( TextBox) ·,, 101 534按钮( Button)…102 535列表框 ListBox) 102 536组合框 Combobox) 103 53.7单选按钮( Radio Button)和复选框( CheckBox) 104 538图片...
  • 删除是按照学号字段删除删除成功弹出提示“您成功删除1条数据” ③修改是以学号为标准进行修改,修改成功弹出提示“您成功修改1条数据” 效果图如下: 代码如下: //实例化对象,用于开启程序和数据库之间的...

    前提:

    创建数据库、插入相关数据,我的数据库表名为:Student_Info,插入数据如下:

    在这里插入图片描述

    实现功能:

    ①添加时如果id已存在,则弹出对话框:“您输入的id已存在”,成功后显示如图的提示信息

    ②删除是按照学号字段删除,删除成功弹出提示“您成功删除1条数据”

    ③修改是以学号为标准进行修改,修改成功弹出提示“您成功修改1条数据”
    效果图如下:

    在这里插入图片描述

    代码如下:

         //实例化对象,用于开启程序和数据库之间的连接
        SqlConnection conn;
        //窗体Load事件
        private void _4_2_Load(object sender, EventArgs e)
        {
            //连接数据库
            conn = new SqlConnection(@"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=WinFormSQL;Data Source=localhost");
            //打开数据库连接
            conn.Open();
        }
        //“添加”按钮的Click事件
        private void button1_Click(object sender, EventArgs e)
        {
            //实例化对象,用于对数据库发出指令
            SqlCommand cmd = new SqlCommand();
            //向数据库发出打开/关闭指令
            cmd.Connection = conn;
            //向数据库发出查询指令
            cmd.CommandText = "select count(*) from Student_Info where studentID=" + textBox1.Text;
            //ExecuteScalar()方法是从数据库中检索单个值,返回值是object类型
            //用ExecuteScalar()是select中的“*”必须改为“count(*)”
            string r = cmd.ExecuteScalar().ToString();
            //编号不存在就可以添加
            if (r != "0")
                MessageBox.Show("编号已存在");
            else
            {
                //“添加”指令字符串
                string sql = "insert into Student_Info (studentID,studentName,studentClass) values('{0}','{1}','{2}')";
                //执行指令字符串
                cmd.CommandText = string.Format(sql, textBox1.Text, textBox2.Text, textBox3.Text);
                //ExecuteNonQuery()方法是返回受影响行数
                int result = cmd.ExecuteNonQuery();
                if (result == 1)
                    MessageBox.Show("插入成功");
                else
                    MessageBox.Show("插入失败");
            }
        }
        //“删除”按钮的Click事件
        private void button2_Click(object sender, EventArgs e)
        {
            //“删除”指令字符串
            string sql = "delete from Student_Info where studentID=" + textBox1.Text;
            //执行打开数据库连接指令和“删除”指令字符串
            SqlCommand cmd = new SqlCommand(sql, conn);
            //ExecuteNonQuery()方法是返回受影响行数
            int result = cmd.ExecuteNonQuery();
            if (result == 1)
                MessageBox.Show("删除成功");
            else
                MessageBox.Show("删除失败");
        }
        //“修改”按钮的Click事件
        private void button3_Click(object sender, EventArgs e)
        {
            //“修改”指令字符串
            string sql = "update Student_Info set studentName='{0}',studentClass='{1}' where studentID=" + textBox1.Text;
            //实例化对象,用于对数据库发出指令
            SqlCommand cmd = new SqlCommand();
                //执行指令字符串
            cmd.CommandText = string.Format(sql, textBox2.Text, textBox3.Text);
            //执行打开数据库指令
            cmd.Connection = conn;
            //ExecuteNonQuery()方法是返回受影响行数
            int result = cmd.ExecuteNonQuery();
            if (result == 1)
                MessageBox.Show("修改成功");
            else
                MessageBox.Show("修改失败");
        }
    

    代码均为原创,存在不足还请见谅!如有转载请注明来源: www.dreamload.cn/blog/?p=445&preview=true (洋葱先生)

    展开全文
  • 管理开发系统七:winform连接数据库删除 https://blog.csdn.net/m0_37583098/article/details/88578796 管理开发系统八:winform导出excel https://blog.csdn.net/m0_37583098/article/details/88579043 ...

    首先把DataGridview 改成整行选中

     判断 当前情况 没有数据 或则没选择数据

    if (this.dgvStudentList.RowCount == 0 || this.dgvStudentList.CurrentRow == null)
                {
                    MessageBox.Show("请选择要修改的信息!","修改信息");
                    return;
                }

    //获取需要修改的信息 这也是上一章 为什么要设置datagridview的name的原因了 

    string sqid = this.dgvStudentList.CurrentRow.Cells["sqid"].Value.ToString();

    然后这里我们要弹出一个修改界面 所以要先设置一个修改界面 将后将数据传递过去。

     我这个修改界面的类名叫My_SeQuAlter   下一步先创建有参构造函数 方便接受数据从而进行显示

    public My_SequAlter(SeQuDate date)
            {
                InitializeComponent();
                //初始化状况
                this.txtsqid.Text = date.SqId;
                this.txtsqname.Text = date.SqName;
                this.txtsqmaner.Text = date.SqManer;
                this.txtsqphone.Text = date.SqPhone;
                this.dateTimePicker1.Text = date.SqTime.ToShortDateString();
            }

    回到查询类脚本中,将数据传递过去。

     SeQuDate date = objSeQu.GetSeQubyid(sqid);
                //调用显示
                My_SequAlter panle = new My_SequAlter(date);
                DialogResult result = panle.ShowDialog();
                if (result == DialogResult.OK)
                {
                    sqlLog.WriteSQLLog(sqname + "社区信息修改");
                    btnQuery_Click(null, null);
                 }

    这块 说一下   SeQuDate date = objSeQu.GetSeQubyid(sqid);  SeQuDate是我创建的一个社区实体类 之前的文章应该有详细的代码信息。    objSeQu.GetSeQubyid(sqid); 根据id 查询社区信息。

    然后new出修改界面 然后传递参数。

    这里监听了一下修改界面的返回值DialogResult 如果修改成功 btnQuery_Click(null, null); 是我封装的查询方法,修改完成 重新查询一下。

    给出我的修改界面代码

     //提交修改
            private void BtnUpdate_Click(object sender, EventArgs e)
            {
                #region 验证
                //社区代码验证
                if (this.txtsqid.Text.Trim().Length != 12)
                {
                    MessageBox.Show("社区代码应为12位数字", "验证提示");
                    this.txtsqid.Focus();
                    return;
                }
                #endregion
    
                //验证完毕 上传数据库
                //1.封装对象
                SeQuDate sqdate = new SeQuDate()
                {
                    SqId = this.txtsqid.Text.Trim(),
                    SqName = this.txtsqname.Text.Trim(),
                    SqManer = this.txtsqmaner.Text.Trim(),
                    SqPhone = this.txtsqphone.Text.Trim(),
                    SqTime = Convert.ToDateTime(this.dateTimePicker1.Text)
                };
      
                    //2.提交对象  修改社区
                    try
                    {
                        int result = service.UpdateSeQu(sqdate);
                        if (result == 1)
                        {
                            MessageBox.Show("修改成功", "修改提示");
                            this.DialogResult = DialogResult.OK;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
    
            private void My_SeQuAlter_Load(object sender, EventArgs e)
            {
    
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                this.Close();
            }

    修改对象的sql语句      至于SQLHelper.Update(sql); 先前封装的数据的删改。具体内容可以看之前的文章 

            /// <summary>
            /// 修改社区
            /// </summary>
            /// <param name="objsq"></param>
            /// <returns></returns>
            public int UpdateSeQu(SeQuDate objsq)
            {
                string sql = "update SeQu set sqid='{0}',sqname='{1}',sqmaner='{2}',sqphone='{3}',sqtime='{4}'  where sqid='{0}' ";
                sql = string.Format(sql,
                    objsq.SqId,
                    objsq.SqName,
                    objsq.SqManer,
                    objsq.SqPhone,
                    objsq.SqTime);
                try
                {
                    return SQLHelper.Update(sql);
                }
                catch (Exception ex)
                {
                    throw new Exception("修改社区数据出错!" + ex.Message);
                }
            }

    预祝成功!!!!!!!!!!!!

    管理系统开发一: winform连接sql数据库 https://blog.csdn.net/m0_37583098/article/details/88546146

    管理系统开发二: winforml登录界面sql数据查询和修改 https://blog.csdn.net/m0_37583098/article/details/88547123

    管理系统开发三: winforml录入界面 https://blog.csdn.net/m0_37583098/article/details/88547805

    管理系统开发四: 在主窗体中嵌入子窗体的实现 https://blog.csdn.net/m0_37583098/article/details/88549151

    管理开发系统五:winform连接数据库查询 使用DataGridView展示查询结果 https://blog.csdn.net/m0_37583098/article/details/88549461

    管理开发系统六:winform连接数据库修改 https://blog.csdn.net/m0_37583098/article/details/88550157

    管理开发系统七:winform连接数据库删除 https://blog.csdn.net/m0_37583098/article/details/88578796

    管理开发系统八:winform导出excel https://blog.csdn.net/m0_37583098/article/details/88579043

    管理开发系统九:winform带sql数据库导出 https://blog.csdn.net/m0_37583098/article/details/88580311

    sql service 常用语句基础https://blog.csdn.net/m0_37583098/article/details/87876264

    展开全文
  • 其次,本次发文的目的主要是为了给C#初学者一个小小的参考,懂得如何连接数据库去进行增删查改,能更好的入门;最后,希望大家可以通过我的实例代码得到一定的收获,为日后的学习奠定基础。 有需要本资源的请点击此...
    • 概要

    首先,作为一个初学C#的我对于本次发文的内容以及实例代码可能会与你所想的有所偏颇,或者说我写得很不好甚至不对,请多多包涵、多多指教,欢迎你们在评论区留下建议;其次,本次发文的目的主要是为了给C#初学者一个小小的参考,懂得如何连接数据库去进行增删查改,能更好的入门;最后,希望大家可以通过我的实例代码得到一定的收获,为日后的学习奠定基础。

    有需要本资源的请点击此链接点击我下载源代码

    或者直接把此链接复制到网址栏进行搜索  https://download.csdn.net/download/weixin_42148410/11615291

    • 环境

    开发工具:Visual Studio 2015

    开发语言:C#

    数据库:SQL Server 2008 R2

    • 实例图片

    登录界面:输入账号密码点击登录即可,若输入的账号密码与数据库不匹配会有相应提示。

    首页:在首页可以看到数据库所有信息,数据绑定的是listview。其中有什么功能都一目了然了,我就不多说了,在右上角可以看到当前用户登录的账号。

    查找功能:查找使用的是模糊查询,只要输入姓名的某个字符或者全名都是可以的,如下图有a的姓名都会查找出来。

    添加功能:输入相关信息即可添加成功

    修改功能:选中你所想修改的行,点击修改按钮即可把信息绑定到Dialog上。

    删除功能:选中你所想删除的行信息,点击删除按钮就会提示“你确认删除XXX的所有信息吗?”。

    切换用户功能:界面切换到登录界面,也有相应的提示。

    实例代码,里面基本有相应的解释。

    有需要的点击此链接  点击我下载

    复制此链接到网址栏也可以:https://download.csdn.net/download/weixin_42148410/11615291

    如有冒犯,请多包容!

    展开全文
  • C#在winform中操作数据库,实现数据增删改查

    万次阅读 多人点赞 2018-06-12 11:01:07
    为了体现面向对象的思想,我们把“增删改查”这些函数封装到一个数据库操作里;为了便于窗体程序与数据库之间进行数据交互,我们建一个具有数据库行数据的,通过它方便的在窗体程序与数据库之间传输数据;我们...

    为了体现面向对象的思想,我们把“增删改查”这些函数封装到一个数据库操作类里;

    为了便于窗体程序与数据库之间进行数据交互,我们建一个具有数据库行数据的类,通过它方便的在窗体程序与数据库之间传输数据;

    我们新建一个文件夹,把这两个类放在这个文件夹(App)里,以后,把命名空间写上就可以使用这两个类了。

    image

    imageimage

    为了便于窗体程序与数据库之间进行数据交互,我们建一个具有数据库行数据的类,通过它方便的在窗体程序与数据库之间传输数据。

    首先,建立程序的主窗体

    image

    ㈠添加数据

    当点击“增加”,弹出一个子窗体,通过子窗体往数据库中添加一条数据

    private void button1_Click(object sender, EventArgs e)
            {
                Form5 insert= new Form5();
                insert.Owner = this;
                insert.Show();        
            }

    image

    子窗体里的函数:

    复制代码
    public partial class Form5 : Form
        {
            public Form5()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
        //将文本框中的数据存入SqlData类型的变量udata中
                SqlData udata = new SqlData();
                udata.Name = textBox1.Text;
                udata.Code = textBox2.Text;
    
                new SqlDA().addData(udata);//调用添加数据函数,添加数据udata
            }
    
          
        }
    复制代码

    运行程序,添加数据,查看结果

    imageimage

    ㈡查询数据

    第一个查询形式, 
    首先我们需要窗口一加载,就显示出数据库中的所有数据

    首先,在存放方法的SqlDA类中,添加一个获取数据的成员方法,该方法能返回一个数据集合

    复制代码
    //查询数据的方法
            public List<SqlData> select()
            {
                List<SqlData> list=new List<SqlData>();
                //连接数据库,访问数据
                _cmd = _con.CreateCommand();
                _con.Open();
                _cmd.CommandText = "select *from users";
                SqlDataReader dr= _cmd.ExecuteReader();
    
                //将数据库数据转换成Sqldata类型,并放入list集合中
                while  (dr.Read())
                {
                    SqlData data=new SqlData();
                    data.Code = dr["code"].ToString();
                    data.Name = dr["name"].ToString();
                    data.Pwd = dr["pwd"].ToString();
                    list.Add(data);
                }
                _con.Close();
                return list;
            }
    复制代码

     

    然后定义一个绑定数据函数,该函数将上面成员方法返回的数据绑定到listview1中,显示出来

    复制代码
    //绑定数据函数
            public void  bindData(List<SqlData> list)
            {
                //构建表结构
                listView1.Columns.Add("编号");
                listView1.Columns.Add("用户名");
                listView1.Columns.Add("密码");
                //将集合中的数据放入listview1中
                foreach (SqlData data in list)
                {
                    ListViewItem it = new ListViewItem();//构建一个listviewitem对象,通过它把数据放入listview1中
                    it.Text = data.Code;
                    it.SubItems.Add(data.Name);
                    it.SubItems.Add(data.Pwd );
    
                    listView1.Items.Add(it);//将数据放入listview1的items集合中,
                }
                
            }
    复制代码

     

    然后窗体加载事件中,追加绑定数据函数的委托

    //窗体一加载,在listview1中绑定数据
            private void Form4_Load(object sender, EventArgs e)
            {
                bindData(new SqlDA().select());
    
            }

    运行结果

    image

    第二个查询形式, 
    在窗口中输入用户名,根据用户名进行模糊查询

    首先写一个需要参数(用户名)的查询函数,我们可以写一个select的重载函数,如下

    复制代码
    //查询数据的方法2,需要一个字符串参数,与上面的函数构成重载
            public List<SqlData> select(string uname)
            {
                List<SqlData> list = new List<SqlData>();
                //连接数据库,访问数据
                _cmd = _con.CreateCommand();
                _con.Open();
                _cmd.CommandText = "select *from users where name like '%"+uname+"%'";
                SqlDataReader dr = _cmd.ExecuteReader();
    
                //将访问到的数据库数据转换成Sqldata类型,并放入list集合中
                while (dr.Read())
                {
                    SqlData data = new SqlData();
                    data.Code = dr["code"].ToString();
                    data.Name = dr["name"].ToString();
                    data.Pwd = dr["pwd"].ToString();
                    list.Add(data);
                }
                _con.Close();
                return list;
            }
    复制代码

     

    点击“查询”按钮

    //通过输入用户名,查询数据
            private void button4_Click(object sender, EventArgs e)
            {
                listView1.Items.Clear();
                bindData(new SqlDA().select(textBox1.Text));
            }

    image

    ㈢修改数据

    首先,将主窗口的FullRowSelect属性设为True,使行数据可选

    image

    点击“修改”,弹出以下“修改”子窗体

    image

    修改数据不需要修改编号,将“修改”子窗体的第一个文本框的“Enabled”属性设为false。

    “修改”子窗体的代码

    复制代码
    public partial class Form6 : Form
        {
           
            public Form6()
            {
                InitializeComponent();
            }
            //重写修改窗口的构造函数,显示选中项的数据
            public Form6(SqlData data)
            {
                InitializeComponent();
    
                textBox3.Text=data.Code;
                textBox1.Text=data.Name;
                textBox2.Text=data.Pwd;
    
            }
           
    
    
            private void button1_Click(object sender, EventArgs e)
            {
                //将输入的内容转成SqlData格式
                SqlData data = new SqlData();
                data.Code = textBox3.Text;
                data.Name = textBox1.Text;
                data.Pwd = textBox2.Text;
                //调用修改数据函数
                new SqlDA().update(data);
            }
               
    }
    复制代码

     

    修改数据的函数

    复制代码
    //修改数据的方法
            public void  update (SqlData data)
            {
                //打开连接,拼接命令
                _con.Open();
                _cmd = _con.CreateCommand();
                _cmd.CommandText = "update users set name=@name,pwd=@pwd where code=@code";
                _cmd.Parameters.Add("@name",data.Name );
                _cmd.Parameters.Add("@pwd", data.Pwd);
                _cmd.Parameters.Add("@code", data.Code);
                //执行命令,关闭连接
                _cmd.ExecuteNonQuery();
                _con.Close();
                
            }
    复制代码

    将用户名、密码输入后,点击“修改”,在主窗口中点击“查询”,可以看到数据已修改

    image

     

    ㈢删除数据

    复制代码
    //删除数据的方法
            public void delete(SqlData data)
            {
                //打开连接,拼接命令
                _con.Open();
                _cmd = _con.CreateCommand();
                _cmd.CommandText = "delete from users where code=@code";
                _cmd.Parameters.Add("@code", data.Code);
                //执行命令,关闭连接
                _cmd.ExecuteNonQuery();
                _con.Close();
    
            }
    复制代码

     

    newimage1

    展开全文
  • WinForm数据库操作

    2019-09-27 20:33:19
     SQLCommandType = "删除";  }  else  {  SQLCommandType = "数据操作";  }  if (cmd.ExecuteNonQuery() > 0)  {  MessageBox.Show(SQLCommandType+"成功!", "提示");  }  else  {  MessageBox.Show...
  • Winform实现链接Mysql数据库

    千次阅读 2020-05-31 09:36:57
    MySql.Data.dll提供以下8个: MySqlConnection: 连接MySQL服务器数据库。 MySqlCommand:执行一条sql语句。 MySqlDataReader: 包含sql语句执行的结果,并提供一个方法从结果中阅读一行。 MySqlTransaction: ...
  • 连接oracle数据库及SQL数据库,进行datagridview上的各种计算及光标在单元格中跳转操作。datagridview上新增、删除、修改操作。
  • 1.首先在App.config配置文件中配置数据库连接字符串: <appSettings> <add key="connectionstring" value="server=XXX.XX.X.XX;uid=sa;pwd=******;database=XXXX"/> <!--<add key="datahost" ...
  • Winform连接SqlServel数据库进行居民管理系统开发。 最近负责了一项居民管理系统,开始的我是懵的,因为除了大学学的那一点后,我之后就没怎么接触而且连大学学的那点也基本上还给老师了,但是开发还是要开发的,总...
  • (1)先定义一个数据库操作的公共: class SqlHelper { private static string connStr = System.Configuration.ConfigurationManager.AppSettings["DB"]; /// &lt;summary&gt;...
  • C# winform 数据库链接

    2018-03-09 11:26:00
    数据库链接 字符信息 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Data.SqlClient; 6 using System.Data; 7 8 ...
  • 想起如果自己能做一个操作数据库的小软件应该不错。 所需要的知识基础就是sql的一些语句和C#的ADO.NET。 主要就是Connection、Command、DataReader和Dataset,还有就是DataAdapter等封装好的。 还有就是一些基本...
  • 管理开发系统七:winform连接数据库删除 https://blog.csdn.net/m0_37583098/article/details/88578796 管理开发系统八:winform导出excel https://blog.csdn.net/m0_37583098/article/details/88579043 ...
  • 本系统适合初学者,环境: SqlServer 工具:Visual Studio 2017 本系统实现了对Sql Server数据库的增删改查,共分为三个模块,学生管理,成绩管理,系统设置
  • MessageShow("请先把脚本中的创建和USE GO语句删除", "数据库脚本异常", MessageBoxIcon.Warning); return ""; } return sqlstr; } catch (Exception ex) { throw ex; } } /// /// 测试连接 /// ...
  • Winform连接MySQL数据库实现增删查改功能

    万次阅读 多人点赞 2018-11-06 15:10:09
    数据库是提前创建好的,用户名密码什么的直接写在点击连接按钮事件中了,可能未来的某一天想起来这个小项目会回来完善一下   界面   代码 using System; using System.Collections.Generic; using Sys.....
  • 双击删除按钮 进入方法里 先判断有没有选中要删除的信息 再弹出确认界面 防止误操作 if (this.dgvStudentList.RowCount == 0 || this.dgvStudentList.CurrentRow == null) { MessageBox.Show("请选择要...
  • c# winform 打包(带数据库安装)

    千次阅读 2017-03-10 22:36:33
    c# winform 打包(带数据库安装) 下边我将用vs中自带的打包程序建立安装包。 关于打包网上有现成的文章,(手把手教你使用VS制作winform安装包):http://www.cnblogs.com/chankcheng/articles/1774932.html文章如下...
  • winform - 读取数据库

    2016-04-10 16:33:00
    构造数据库命令操作对象,用于执行T-SQL语句 77 SqlCommand cmd = new SqlCommand(); 78 // 执行操作的T-SQL语句或者存储过程 79 cmd.CommandText = " select * from Steel " ; 80 // 执行操作...
  • 学生成绩管理系统 1) 对于人员:要求能添加新成员,删除旧成员,更改成员信息,查询成员信息。 2) 对于课程:要求能添加新课程,删除旧课程,更改课程信息,查询课程信息。 3) 对于权限:要设置系统管理员,教师...
  • WINFOMR 添加数据库示例 1添加新的数据库文件 单击添加 单击取消 2 添加表 3 添加数据 4 连接数据库 5 显示数据 运行程序查看是否显示数据 完成 6 获取数据代码 / TODO: 这行代码将数据加载到表 浩瀚个人珍藏数据源 ...
  • c# winform datagridview联合access数据库 查询 删除 添加 生成报表 demo
  • !... int id = 0; try { id = (int)dgv_inventory.CurrentRow.Cells[0].Value... 以上为删除按钮事件中的代码,运行时只能运行到try_catch语句,即一直跳出窗体提示“请选择有效数据行”,这是哪里出现了问题?
  • //向数据库中新增数据 private void button1_Click_1(object sender, EventArgs e) { SqlConnection conn = new SqlConnection("server=.;database=作业;user=sa;pwd=123"); Sql...
  • c# winform数据库进行增删改查操作

    千次阅读 多人点赞 2019-03-15 15:58:39
    开发工具:sqlserver2012,visoual code 2017 打开sqlserver2012 ,创建一个表,表结构如下 然后打开VS2017,文件-新建-项目-Windows窗体应用 这里我就在工具箱拉取了三个button和一个...先右击添加一个,D...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,375
精华内容 2,950
关键字:

winform数据库删除的类