zoukankan      html  css  js  c++  java
  • C#2005中使用控件DataGridView实现对数据库增删改查操作

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Data.SqlClient;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;

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

    private DataSet ds = new DataSet();
    private SqlConnection conn = null;
    private SqlDataAdapter da = null;
    private const string DRIVER = "server=.;database=northwind;uid=sa;pwd=sa";
    private const string sql_select = "select * from region";

    /**//**
    * 此方法为将数据库northwind中的region表的数据查询出来并放入DataSet中
    *
    */
    private void Form1_Load(object sender, EventArgs e)
       {
              conn
    = new SqlConnection(DRIVER);
              da
    = new SqlDataAdapter(sql_select,conn);
              da.Fill(ds,
    "table");
              this.dataGridView1.DataSource = ds.Tables["table"].DefaultView;
    }

    private bool BtnInsert() //此方法作用于添加
       {
              da.InsertCommand
    = conn.CreateCommand();
              da.InsertCommand.CommandText
    = "insert into region(id,ption) values(@id,@ption)";
              da.InsertCommand.Parameters.Add(
    "@id", SqlDbType.Int, 4, "regionid");
              da.InsertCommand.Parameters.Add(
    "@ption", SqlDbType.VarChar, 10, "regiondescription");
              int count = da.Update(ds);
              bool result = count > 0 ? true : false;
              return result;
    }
    private void button1_Click(object sender, EventArgs e)
    {
              if (this.BtnInsert())//调用此方法
              {
                   MessageBox.Show(
    "添加成功!");
              }
              else 
             {
                   MessageBox.Show(
    "添加失败!");
             }
    }


    private bool BtnDelect() //此方法作用于删除
    {
         SqlParameter para
    = new SqlParameter();
         da.DeleteCommand
    = conn.CreateCommand();
         da.DeleteCommand.CommandText
    = "delete from region where regionid=@id";
         para
    = da.DeleteCommand.Parameters.Add("@id", SqlDbType.Int, 4, "regionid");
         para .SourceVersion
    = DataRowVersion.Original; //获取原始值
         ds.Tables[
    "table"].Rows[this.dataGridView1.CurrentRow.Index].Delete();
         int count = da.Update(ds);
         bool result = count > 0 ? true : false;
         return result;
    }
    private void button2_Click(object sender, EventArgs e)
    {
         if (this.BtnDelect())//调用删除方法
         {
              MessageBox.Show(
    "删除成功!");
         }
         else
         {
              MessageBox.Show(
    "删除失败!");
         }
    }


    private bool BtnUpdate() //此方法作用于修改
    {
         SqlParameter para
    = new SqlParameter();
         da.UpdateCommand
    = conn.CreateCommand();
         da.UpdateCommand.CommandText
    = "update region set regionid=@id,regiondescription=@ption where regionid=@oldid";

         da.UpdateCommand.Parameters.Add(
    "@id", SqlDbType.Int, 4, "regionid");
         da.UpdateCommand.Parameters.Add(
    "@ption", SqlDbType.VarChar, 10, "regiondescription");

         para 
    = da.UpdateCommand.Parameters.Add("@oldid", SqlDbType.Int, 4, "regionid");
         para .SourceVersion
    = DataRowVersion.Original;

         int count = da.Update(ds);
         bool result = count > 0 ? true : false;
         return result;
    }
    private void button3_Click(object sender, EventArgs e)
    {
         if (this.BtnUpdate())//调用修改方法
         {
              MessageBox.Show(
    "修改成功!");
         }
         else
         {
              MessageBox.Show(
    "修改失败!");
         }
    }
    }
    }

    作者:zeke     
              出处:http://zhf.cnblogs.com/
              本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 

  • 相关阅读:
    LeetCode(111) Minimum Depth of Binary Tree
    LeetCode(108) Convert Sorted Array to Binary Search Tree
    LeetCode(106) Construct Binary Tree from Inorder and Postorder Traversal
    LeetCode(105) Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode(99) Recover Binary Search Tree
    【Android】通过经纬度查询城市信息
    【Android】自定义View
    【OpenStack Cinder】Cinder安装时遇到的一些坑
    【积淀】半夜突然有点想法
    【Android】 HttpClient 发送REST请求
  • 原文地址:https://www.cnblogs.com/ZHF/p/zhangfeng.html
Copyright © 2011-2022 走看看