C#中的 增 、删、 改、 查功能

C#中的 增 、删、 改、 查功能
以下是各大板块的功能  有注释。。。

/// <summary> ­

/// 对话框返回值 ­

/// ­

///这是一个退出按键的方法,用来确定用户是否真的要退出 ­

/// </summary> ­

        private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) ­

        { ­

            //定义 DialogResult 变量 用以存储对话框返回值 ­

            DialogResult exitForm; ­

            //对话框 ­

            exitForm = MessageBox.Show("冯磊老大您确定要离开我吗?","退出系统",MessageBoxButtons.OKCancel,MessageBoxIcon.Information); ­

            //判断 ­

            if (exitForm == DialogResult.OK)   //使用 DialogResult 属性判断该按钮的返回值是否为 "确定" ­

            { ­

                Application.Exit();//退出系统 ­

            } ­

        } ­

­

­

­

­

­

­

/// <summary> ­

/// 创建 DBManager 类 ­

/// ­

/// 在 DBManager 类中创建数据库教程连接 ­

/// </summary> ­

  class DBManager ­

   { ­

    //连接数据库字符串 和 实例化 connection 对象 ­

    private static string sqlconString = "Data Source=ASUSSQLEXPRESS;Initial Catalog=MyDB;Integrated Security=True"; ­

    public static SqlConnection con = new SqlConnection(sqlconString); ­

   } ­

­

­

­

­

­

­

/// <summary> ­

/// 创建 User 类 ­

/// ­

/// 在 User 类中创建 用于存储交换的变量 ­

/// </summary> ­

  class User ­

   { ­

    public string userID = ""; ­

    public string userName = ""; ­

    public string userAge = ""; ­

    public string userGongZi = ""; ­

    public string userJiGuan = ""; ­

   } ­

­

/// <summary> ­

        /// ExecuteScalar()方法 返回单个值 ­

         ­

        /// 核心 SELECT COUNT(*) FROM Student ­

        /// 核心 com.ExecuteScalar(); ­

/// </summary> ­

//定义数据库连接字符串 和 connection 对象 ­

string sqlString = "Data Source=ASUSSQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True"; ­

SqlConnection con = new SqlConnection(sqlString); ­

­

//打开数据库 ­

con.Open(); ­

//拼SQL语句 和 创建 command 对象 ­

string sql = "SELECT COUNT(*) FROM Student "; ­

SqlCommand com = new SqlCommand(sql,con); ­

// 执行 SQL 查询 使用ExecuteScaler()方法 返回一个读取值 ­

int num = (int)com.ExecuteScalar(); ­

//将返回值格式化后存入变量中 后输出 ­

string message = string.Format("Student表中共有{0}条学员信息!", num); ­

MessageBox.Show(message, "查询结果", MessageBoxButtons.OK, MessageBoxIcon.Information);//然后将该变量输出 ­

//关闭数据库 ­

con.Close(); ­

­

­

­

­

­

/// <summary> ­

        ///  将数据加载到 comboBox 控件中 ­

         ­

        /// 核心 select studentName from student ­

        /// 核心 SqlDataReader dataReader = com.ExecuteReader(); ­

        /// 核心 string studentName = ""; ­

        /// 核心 while (dataReader.Read()){ ­

        /// 核心  studentName = (string)dataReader[0]; ­

        /// 核心 comboBox1.Items.Add(studentName); ­

        /// 核心 } ­

/// </summary> ­

            //定义数据库字符 和 connection 对象 ­

            string sqlString = "Data Source=ASUSSQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True"; ­

            SqlConnection con = new SqlConnection(sqlString); ­

            //定义sql语句 和 command 对象 ­

            string sql = "select studentName from student"; ­

            SqlCommand com = new SqlCommand(sql, con); ­

            //打开数据库 ­

            con.Open(); ­

            //执行sql读取 使用dataReader对象 ­

            SqlDataReader dataReader = com.ExecuteReader(); ­

            //循环读取每一条数据 添加到comboBox1 中 ­

            string studentName = "";//将每条读取存入这个变量 用以每次想comboBox1中添加 ­

            while (dataReader.Read()) ­

            { ­

                studentName = (string)dataReader[0];//从第0项开始读取 ­

                comboBox1.Items.Add(studentName);//添加每条读取到 comboBox1 中 ­

            } ­

            //关闭读取 和 数据库 ­

            dataReader.Close(); ­

            con.Close(); ­

­

­

­

­

­

/// <summary> ­

        /// 将数据加载到 listView 控件中 ­

         ­

        /// 核心 SqlDataReader dataReader = com.ExecuteReader(); ­

        /// 核心 string id = ""; ­

        /// 核心 string adminUser = ""; ­

        /// 核心 string adminPwd = ""; ­

        /// 核心 while (dataReader.Read()){ ­

        /// 核心 id = dataReader["adminId"].ToString(); ­

        /// 核心 adminUser = dataReader["LoginId"].ToString(); ­

        /// 核心 adminPwd = dataReader["LoginPwd"].ToString(); ­

        /// 核心 ListViewItem liv = new ListViewItem(adminUser); ­

        /// 核心 liv.Tag = (int)dataReader["adminId"]; ­

        /// 核心 listView1.Items.Add(liv); ­

        /// 核心 liv.SubItems.AddRange(new string[] { adminPwd }); ­

        /// 核心 } ­

/// </summary> ­

   ­

  private void FillListView() ­

        { ­

   //清空listview   ­

            listView1.Items.Clear(); ­

            //定义数据库字符 和 connection 对象 ­

            string sqlconString = "Data Source=ASUSSQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True"; ­

            SqlConnection con = new SqlConnection(sqlconString);//上面定义过 ­

            //拼SQL 和 command 对象 ­

            string sql = "select * from admin";//上面定义过 ­

            SqlCommand com = new SqlCommand(sql, con);//上面定义过 ­

            con.Open(); ­

            //执行SQL语句 ­

            SqlDataReader dataReader = com.ExecuteReader(); ­

            //定义存储变量 ­

            string id = ""; ­

            string adminUser = ""; ­

            string adminPwd = ""; ­

            //循环读取数据库 数据 然后存入变量中 ­

            while (dataReader.Read()) ­

            { ­

                //将数据库中的数据读取到变量中 ­

                id = dataReader["adminId"].ToString();//拿到ID ­

                adminUser = dataReader["LoginId"].ToString(); ­

                adminPwd = dataReader["LoginPwd"].ToString(); ­

                //创建 ListView 项 ­

                ListViewItem liv = new ListViewItem(adminUser);//将 adminUser 加载到第一项中 ­

                liv.Tag = (int)dataReader["adminId"]; ­

                listView1.Items.Add(liv);//向listView1中添加一个新项 ­

                liv.SubItems.AddRange(new string[] { adminPwd });//将剩余项 adminPwd 添加到listView1中 ­

            } ­

            dataReader.Close(); ­

            con.Close(); ­

        }     ­

­

­

­

­

­

­

/// <summary> ­

  /// 单击 listView 时 将本行数据存入 user 类中的变量中 ­

        /// 核心 定义 user 类 ­

        /// 核心 使用 listView1.SelectedItems[0].SubItems[1].Text.ToString(); 拿到数据 并存入user 类中(需要实例化) ­

/// </summary> ­

        private void listView1_Click(object sender, EventArgs e) ­

        { ­

            //实例化 User 类 ­

            User us = new User(); ­

            //将鼠标点击的 listView 行的数据存入 user 类中的变量中 ­

            us.userName = listView1.SelectedItems[0].SubItems[1].Text.ToString(); ­

            us.userAge  = listView1.SelectedItems[0].SubItems[2].Text.ToString(); ­

            us.userGongZi = listView1.SelectedItems[0].SubItems[3].Text.ToString(); ­

            us.userJiGuan = listView1.SelectedItems[0].SubItems[4].Text.ToString(); ­

            //将 user类中的数据在放到 textBox 控件中 ­

            txtName.Text = us.userName; ­

            txtAge.Text = us.userAge; ­

            txtGongZi.Text = us.userGongZi; ­

            txtJiGuan.Text = us.userJiGuan; ­

        } ­

­

­

­

­

­

­

/// <summary> ­

        ///  增 ­

         ­

        /// 核心 string sql = string.Format("insert into admin (LoginId,LoginPwd) values ('{0}','{1}')",textBox1.Text,textBox2.Text); ­

        /// 核心 int num =com.ExecuteNonQuery(); ­

/// </summary> ­

   //判断非空 ­

            if(textBox1.Text.Trim()=="") ­

            { ­

                MessageBox.Show("冯磊老大你叫啥?"); ­

                textBox1.Focus();//得到焦点 ­

                return;//如果为空则返回空 即结束 ­

            }else if(textBox2.Text.Trim()=="") ­

            { ­

                MessageBox.Show("冯磊老大告诉我密码?"); ­

                textBox2.Focus(); ­

                return; ­

            } ­

            //定义数据库连接 和 connection 对象 ­

            string sqlconString = "Data Source=ASUSSQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True"; ­

            SqlConnection con = new SqlConnection(sqlconString ); ­

            //拼SQL 和 command 对象 ­

            string sql = string.Format("insert into admin (LoginId,LoginPwd) values ('{0}','{1}')",textBox1.Text,textBox2.Text); ­

            SqlCommand com = new SqlCommand(sql,con ); ­

            con.Open(); ­

            //添加数据到数据库 使用ExecutenNonQuery方法 ­

            int num =com.ExecuteNonQuery(); ­

            //如果添加成功侧提示 ­

            if (num==1) ­

            { ­

                MessageBox.Show("冯磊老大添加成功!"); ­

            } ­

            else { ­

                MessageBox.Show("哦哦~~冯磊老大添加失败!","",MessageBoxButtons.OK,MessageBoxIcon.Error); ­

            } ­

            con.Close(); ­

   //在加载 一遍 listView 可以将创建的listView 抽成方法 如 fillListView(); ­

   fillListView(); ­

­

­

­

­

­

/// <summary> ­

        ///  删 ­

         ­

        /// 核心 if(listView1.SelectedItems.Count==0) ­

        /// 核心 string sql = string.Format("delete from admin where AdminId='{0}'",(int)listView1.SelectedItems[0].Tag); ­

        /// 核心 int test = com.ExecuteNonQuery(); ­

/// </summary> ­

   //确保用户选择了一个学员才执行修改操作 ­

            if(listView1.SelectedItems.Count==0) ­

            { ­

                MessageBox.Show("冯磊老大你不告诉我删除那个我怎么删"); ­

                return; ­

            }else{ ­

                 ­

                //定义数据库连接字符串 和 connection 对象 ­

                string sqlconString = "Data Source=ASUSSQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True"; ­

                SqlConnection con = new SqlConnection(sqlconString); ­

                //拿ID ­

                string sql = string.Format("delete from admin where AdminId='{0}'",(int)listView1.SelectedItems[0].Tag); ­

                SqlCommand com = new SqlCommand(sql,con); ­

                con.Open(); ­

                //执行SQL ­

                 int test = com.ExecuteNonQuery(); ­

                //提示删除成功与否 ­

                 if (test > 0) ­

                 { ­

                     MessageBox.Show("冯磊老大我成功的给你灭了它!"); ­

                 } ­

                 else { ­

                     MessageBox.Show("冯磊老大我灭它失败!"); ­

                 } ­

                con.Close(); ­

            } ­

            /* listView */ ­

            FillListView();//加载FillListView(); ­

­

­

/// <summary> ­

  /// 右键 删除 ­

   ­

  /// 核心 listView1.SelectedItems[0].Tag.ToString() ­

/// </summary> ­

   DBManager.con.Open(); ­

            string sql = string.Format("delete from yuangong where id='{0}'",listView1.SelectedItems[0].Tag.ToString());//listView1.SelectedItems[0].Tag.ToString();  //拿到ID ­

            SqlCommand com = new SqlCommand(sql,DBManager.con); ­

            int shanChu = com.ExecuteNonQuery(); ­

            DBManager.con.Close(); ­

   /* listView */ ­

            FillListView();//加载FillListView(); ­

­

­

­

­

­

­

/// <summary> ­

        ///  改 ­

         ­

        /// 核心 (int)listView1.SelectedItems[0].Tag ­

        /// 核心 update YuanGong set name='{0}',age='{1}',gongzi='{2}',jiguan='{3}' where id={4} ­

        /// 核心 int Run = com.ExecuteNonQuery(); ­

/// </summary> ­

   SqlConnection sql = string.Format("update YuanGong set name='{0}',age='{1}',gongzi='{2}',jiguan='{3}' where id={4}", txtName.Text, txtAge.Text, txtGongZi.Text, txtJiGuan.Text, (int)listView1.SelectedItems[0].Tag); ­

   SqlCommand com = new SqlCommand(sql, DBManager.con); ­

   DBManager.con.Open(); ­

   int Run = com.ExecuteNonQuery(); ­

   if (Run == 1) ­

   { ­

    DBManager.con.Close(); ­

    FillListView(); ­

   } ­

   else ­

   { ­

    MessageBox.Show("冯磊老大修改失败!", "提示框", MessageBoxButtons.OK, MessageBoxIcon.Error); ­

    DBManager.con.Close(); ­

   } ­

­

­

­

­

­

/// <summary> ­

        ///  查 ­

         ­

        /// 核心 listView1.Items.Clear(); ­

        /// 核心 if (!datareader.HasRows) ­

        /// 核心 SqlDataReader datareader = com.ExecuteReader(); ­

/// </summary> ­

   listView1.Items.Clear(); ­

   ­

   string id = ""; ­

   string name = ""; ­

   string age = ""; ­

   string gongzi = ""; ­

   string jiguan = ""; ­

   sql = string.Format("select * from yuangong where name='{0}' or age='{1}' or gongzi='{2}' or jiguan='{3}'", txtName.Text, txtAge.Text, txtGongZi.Text, txtJiGuan.Text); ­

   com = new SqlCommand(sql, DBManager.con); ­

   SqlDataReader datareader = com.ExecuteReader(); ­

   if (!datareader.HasRows) ­

   { ­

    MessageBox.Show("哦哦~~~冯磊老大没有在国防部查到你要的数据!"); ­

    datareader.Close(); ­

    DBManager.con.Close(); ­

    return; ­

   } ­

   else { ­

    while(datareader.Read()) ­

    { ­

     id=datareader["ID"].ToString(); ­

     name=datareader["name"].ToString(); ­

     age=datareader["age"].ToString(); ­

     gongzi=datareader["gongzi"].ToString(); ­

     jiguan=datareader["jiguan"].ToString(); ­

     ListViewItem liv = new ListViewItem(id); ­

     liv.Tag=(int)datareader["ID"]; ­

     listView1.Items.Add(liv); ­

     liv.SubItems.AddRange(new string []{name,age,gongzi,jiguan}); ­

    } ­

    datareader.Close(); ­

    DBManager.con.Close(); ­

   } ­

­

­

//============================================================================================ ­

MessageBox.Show(listView1.SelectedItems[0].Tag.ToString());  //拿到ID ­

MessageBox.Show(listView1.SelectedItems[0].SubItems[0].Text);  //拿到第一列的单元格的值 ­

­

­

//============================================================================================ ­

­

­

/// <summary> ­

/// 创建 全局变量 ­

/// </summary> ­

        //实例化 dataSet 和 声明 dataAdapter ­

        DataSet dataSet = new DataSet(); ­

        SqlDataAdapter dataAdapter; ­

        //声明字符 ­

        string sql =""; ­

         ­

         ­

         ­

         ­

­

/// <summary> ­

/// 创建 fillDataGridView方法 ­

/// </summary> ­

        private void fillDataGridView() ­

        { ­

            //拼基本 SQL 语句 ­

            sql = "select id as 编号,name as 姓名,age as 年龄,gongzi as 工资,jiguan as 籍贯 from yuangong "; ­

            //实例化 dataAdapter ­

            dataAdapter = new SqlDataAdapter(sql, DBManager.con); ­

            //填充 dataSet ­

            dataAdapter.Fill(dataSet, "yuanGong"); ­

            //将数据绑定到 dataGridView中 ­

            dataGridView1.DataSource = dataSet.Tables["yuanGong"]; ­

        } ­

         ­

         ­

         ­

         ­

­

/// <summary> ­

/// 筛选 数据 ­

/// </summary> ­

            //刷新基本 SQL 语句 ­

            sql = "select id as 编号,name as 姓名,age as 年龄,gongzi as 工资,jiguan as 籍贯 from yuanGong "; ­

            //拼接 条件SQL 语句 ­

            switch(comboBox1.Text) ­

            { ­

                case "全部": ­

                    break; ­

                case "河南": ­

                    sql = sql + "where  jiguan='河南'"; ­

                    break; ­

                case "浙江": ­

                    sql = sql + "where jiguan='浙江'"; ­

                    break; ­

                case "陕西": ­

                    sql = sql + "where jiguan='陕西'"; ­

                    break; ­

                case "河北": ­

                    sql = sql + "where jiguan='河北'"; ­

                    break; ­

                case "青岛": ­

                    sql = sql + "where jiguan='青岛'"; ­

                    break; ­

            } ­

            //清空 dataSet ­

            dataSet.Tables["yuanGong"].Clear(); ­

            //实例化 dataAdapter ­

            dataAdapter = new SqlDataAdapter(sql,DBManager.con); ­

            //填充 dataSet ­

            dataAdapter.Fill(dataSet, "yuanGong"); ­

            //将数据绑定到 dataGridView中 ­

            dataGridView1.DataSource = dataSet.Tables["yuanGong"]; ­

­

­

­

­

­

/// <summary> ­

/// 更新 数据到数据源 ­

/// </summary> ­

            // 确认修改 ­

            DialogResult result = MessageBox.Show("冯磊老大确定要保存修改吗?", "操作提示",MessageBoxButtons.OKCancel, MessageBoxIcon.Question); ­

            if (result == DialogResult.OK) ­

                { ­

                    // 自动生成更新数据用的命令 ­

                    SqlCommandBuilder comBui = new SqlCommandBuilder(dataAdapter); ­

                    // 将修改过的数据提交到数据库 ­

                    dataAdapter.Update(dataSet, "yuanGong"); ­

                } ­

            //清空 dataSet ­

            dataSet.Tables["yuanGong"].Clear(); ­

            //重新加载数据到 dataGridView 中 ­

            fillDataGridView(); ­

­

­

­

­

­

///窗体间传值 ­

   ­

­

/*公共类*/   ­

   //创建类 ­

   public class readEmail ­

    { ­

      public static string userName=""; ­

      public static string emailName = ""; ­

      public static string emailContent = ""; ­

     ­

    } ­

     ­

­

/*from1*/ ­

   //将鼠标点击的 listView 行的数据存入 read 类中的变量中 ­

            readEmail.userName  = listView1.SelectedItems[0].SubItems[0].Text.ToString(); ­

            readEmail.emailName = listView1.SelectedItems[0].SubItems[1].Text.ToString(); ­

            readEmail.emailContent  = listView1.SelectedItems[0].SubItems[2].Text.ToString(); ­

   //打开新窗体 ­

            emailWinFrom emailwinfrom = new emailWinFrom(); ­

            emailwinfrom.ShowDialog();   ­

             ­

             ­

/*from2*/ ­

            //将内容显示在新窗体的textbox 中 ­

            textBox2.Text = readEmail.userName; ­

            textBox3.Text = readEmail.emailName; ­

            textBox1.Text = readEmail.emailContent;

 

时间: 2024-08-01 17:54:08

C#中的 增 、删、 改、 查功能的相关文章

Struts2实现CRUD(增 删 改 查)功能实例代码_java

CRUD是Create(创建).Read(读取).Update(更新)和Delete(删除)的缩写,它是普通应用程序的缩影.如果您掌握了某框架的CRUD编写,那么意味可以使用该框架创建普通应用程序了,所以大家使用新框架开发OLTP(Online Transaction Processing)应用程序时,首先会研究一下如何编写CRUD.这类似于大家在学习新编程语言时喜欢编写"Hello World". 本文旨在讲述Struts 2上的CRUD开发,所以为了例子的简单易懂,我不会花时间在数

简单的php数据库操作类代码(增,删,改,查)_php实例

数据库操纵基本流程为: 1.连接数据库服务器 2.选择数据库 3.执行SQL语句 4.处理结果集 5.打印操作信息 其中用到的相关函数有 •resource mysql_connect ( [string server [, string username [, string password [, bool new_link [, int client_flags]]]]] ) 连接数据库服务器•resource mysql_pconnect ( [string server [, strin

简单的增 删 改 查

一:insert语句into 关键字是可选的values关键字前面的()是可选的,这里是要接收数据的列values后面,有两种方式提供值1:显式的给出值  2:从select语句中导出值 insert语句注意几点1:不要理标志列,系统会给你插入的2:给出实际的值,如果没有,那就null3:给出默认的值,default关键字,告诉数据库取默认值 insert into ... select什么时候会这么用,当成批的数据来自1:数据库中的另一个表2:同一台服务器完全不同的数据库3:另一个SQLSER

link中如何实现双表对查功能,如果使用listbox和combox可以做?

问题描述 link中如何实现双表对查功能,如果使用listbox和combox可以做? link中如何实现双表对查功能,如果使用listbox和combox可以做? 解决方案 listbox.Items.Cast<String()>.Where(x => x == comboBox.SelectedItem.Text);

oracle监控某表变动触发器例子(监控增,删,改)_oracle

使用oracle触发器 实现对某个表的增改删的监控操作,并记录到另一个表中. 代码: 复制代码 代码如下: create or replace trigger test_trigger    before insert or update or delete on test_table    for each row  declare    v_id        varchar2(30);    v_bdlb      varchar2(1);    v_jgdm      VARCHAR2(

Lucene能否像数据库那样对已存放记录的索引文件的某字段进行增/删/改?

问题描述 比如现在的索引文件中的字段是articleid.title.content.create_date.userid,并且已经索引了10000个记录.我现在需要将其中的userid字段删除掉,将date字段重命名为last_modify,同时增加一个visit_count字段.请问Lucene是否支持这样的操作呢? 解决方案 据我所知不能,都不能不过你可以试试引用通过读取index文件,然后遍历所有的doc,获取所有的field,然后添加到你新的doc里面,然后重新写入index文件因为我

使用DataTable更新数据库(增,删,改)_实用技巧

1.修改数据 复制代码 代码如下:             DataRow dr = hRDataSet.Tables["emp"].Rows.Find(textBox3.Text);            //DataRow dr = hRDataSet.Tables["emp"].Select("id="+textBox3.Text)[0];            dr.BeginEdit();            dr["nam

JS操作图片(增,删,改) 例子_javascript技巧

复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>    <title></titl

BootstrapTable与KnockoutJS相结合实现增删改查功能【一】_javascript技巧

Bootstrap是一个前端框架,解放Web开发者的好东东,展现出的UI非常高端大气上档次,理论上可以不用写一行css.只要在标签中加上合适的属性即可. KnockoutJS是一个JavaScript实现的MVVM框架.非常棒.比如列表数据项增减后,不需要重新刷新整个控件片段或自己写JS增删节点,只要预先定义模板和符合其语法定义的属性即可.简单的说,我们只需要关注数据的存取. 一.Knockout.js简介 1.Knockout.js和MVVM 如今,各种前端框架应接不暇,令人眼花缭乱,有时不得