datagirdview和listview,删改查sqlserver数据库的小结

        //创建DBhelper数据库链接文件


        private static string sqlcon = "server=.;database=myschool;uid=sa;pwd=sa";
        public static SqlConnection connection = new SqlConnection(sqlcon);
============================================================

 

            //首先是lv控件的列表显示 ,(listview)

            // 清空当前lv表中内容

            listview.Items.Clear();
            string sql = "select * from question";

            //引用DBhelper中的数据库链接
            SqlCommand command = new SqlCommand(sql,DBhelper.connection);

            //打开数据库,并用dr读取记录
            DBhelper.connection.Open();
            SqlDataReader dr = command.ExecuteReader();
            while (dr.Read())
            {
                ListViewItem lvi = new ListViewItem(dr["Question"].ToString());
                lvi.SubItems.AddRange(new string[] { dr["Answer"].ToString(), dr["Difficulty"].ToString(), dr["SubjectId"].ToString(), dr["OptionA"].ToString(), dr["OptionB"].ToString(), dr["OptionC"].ToString(), dr["OptionD"].ToString() });

                //把questionid数据库索引列保存到tag中
                lvi.Tag = dr["questionid"].ToString();
                lv_biao.Items.Add(lvi);

            } dr.Close();
            DBhelper.connection.Close();

-------------------------------------------------------------------------------------------------------

            //lv控件删除操作和修改差不多,只需要替换掉sql语句即可(listview)

            //首先信息框询问是否确定删除操作

            if (MessageBox.Show("确定是否删除?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
            {
                string sql = string.Format("delete question where questionid = {0}", lv_biao.SelectedItems[0].Tag);
                SqlCommand command = new SqlCommand(sql, DBhelper.connection);
                DBhelper.connection.Open();
                int num = command.ExecuteNonQuery();
                if (num == 1)
                {
                    MessageBox.Show("删除成功");
                }
                DBhelper.connection.Close();
            }

===========================================================

        //dgv控件的列表显示

        //定义声明好dataadapter,和dataset

        private static SqlDataAdapter da;
        private static DataSet ds = new DataSet();

 

-------------------------------------------------------------------------------------

        //查询按钮下加入如下代码,先清空dataset中的数据(datagridview)
            ds.Reset();
            string sql = "select questionid,question,answer,difficulty,subjectid,optiona,optionb,optionc,optiond from question";
            da = new SqlDataAdapter(sql,DBhelper.connection);

            //dataadapter填充dataset中的数据
            da.Fill(ds, "test");
            dgv_biao.DataSource = ds.Tables["test"];
 --------------------------------------------------------------------------------------------          
         //datagridview中的修改,删除如下,修改只要直接改表格中的数据即可

            dgv_biao.Rows.RemoveAt(dgv_biao.SelectedRows[0].Index);
-------------------------------------------------------------------------------------------------------       

         //把删除或修改后的操作提交到数据库中(才真正执行操作,注意数据库中要有主键在dgv中)
            SqlCommandBuilder scb = new SqlCommandBuilder(da);
            da.Update(ds,"test");
----------------------------------------------------------------------------------------------------------------

ps:插入数据部分先省了~有需要的留言...呵呵

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值