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() //此方法作用于删除
{
  SqlParameterpara = new SqlParameter();
  da.DeleteCommand = conn.CreateCommand();
  da.DeleteCommand.CommandText = "delete fromregion 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("修改失败!");
  }
}
}
}

时间: 2024-08-31 08:32:08

C#2005中使用控件DataGridView实现对数据库增删改查操作的相关文章

asp.net mvc4 如何向mysql 中实现 增删改查操作

问题描述 asp.net mvc4 如何向mysql 中实现 增删改查操作 如题,最近在写一个基于asp.net mvc4网站,后台要求使用mysql数据库,现在的情况是数据库可以连通,单独的sql也会写,但是我不知道按照规范应该在哪写,以及如何通过方法写对应实体的增删改查这些个基本操作,还望有经验的高手能够指点一二! 解决方案 mysql也有entity provider,如果你用它,那么编程和使用sql server没有什么不同. 解决方案二: http://ju.outofmemory.c

详解Android中一些SQLite的增删改查操作_Android

在Android开发中经常要涉及到对数据的操作.Android本身提供了四种数据存储方式.包括:SharePreference,SQLite,Content Provider,File. 在Android,数据都是么私有的,要实现数据共享,正确方式是使用Content Provider.SQLite: SQLite是一个轻量级的数据库,支持基本SQL语法,是常被采用的一种数据存储方式.Android为此数据库提供了一个名为SQLiteDatabase的类,封装了一些操作数据库的API.Share

详解Android中一些SQLite的增删改查操作

在Android开发中经常要涉及到对数据的操作.Android本身提供了四种数据存储方式.包括:SharePreference,SQLite,Content Provider,File. 在Android,数据都是么私有的,要实现数据共享,正确方式是使用Content Provider. SQLite: SQLite是一个轻量级的数据库,支持基本SQL语法,是常被采用的一种数据存储方式.Android为此数据库提供了一个名为SQLiteDatabase的类,封装了一些操作数据库的API. Sha

求Visual Studio 2005 中 Login 控件 的实现代码

问题描述 没做过.net,所有请教一下.页面很简单,就是一个login控件,用来实现登陆功能,最好带有解释.解决就给分,分不够可以在加. 解决方案 解决方案二:自己先顶一下.解决方案三:楼主的意思是提供ui么?<%@PageLanguage="C#"%><%@ImportNamespace="System.ComponentModel"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Trans

CI(CodeIgniter)框架中的增删改查操作_php实例

CodeIgniter的数据函数类在 \system\database\DB_active_rec.php 复制代码 代码如下: <span style="font-size:16px;">class ModelName extends CI_Model {     function __construct()     {         parent::__construct();     } }</span> 连接数据库:$this->load->

CodeIgniter中的增删改查操作

首先,我们创建一个模型(项目目录/models/),请注意:模型名与文件名相同且必须继承数据核心类CI_Model,同时重载父类中的构造方法.CodeIgniter的数据函数类在\system\database\DB_active_rec.php [php] view plaincopy <span style="font-size:16px;">class ModelName extends CI_Model   {       function __construct(

mybatis 一对多配置关系实现在一个映射文件中进行增删改查?

问题描述 mybatis 一对多配置关系实现在一个映射文件中进行增删改查? 一对多关系表,如何在一个映射文件中实现对两个表的增删改查操作? 解决方案 http://wenku.baidu.com/link?url=Pxf2M0_Xb42weBxGfesIrn2_nCLTCEQZr1ZuOxvq5-nu_w1rBkgltw7Qlz-iBnv7lDfGf8h_J7i9plUEzaQfpI5JviC0NsTnyV95fdyUwvu 解决方案二: 你在xml定义两个表的sql匹配就行.增删改查就对这两个

datagridview-C#控件DataGridView中的columns该怎么用呢,求大神帮我解决一下这个问题

问题描述 C#控件DataGridView中的columns该怎么用呢,求大神帮我解决一下这个问题 //dgvEmployee.Columns[0].Width = 40; //dgvEmployee.Columns[1].Width = 80; 这两句怎么才能使用 用完查询语句后想将数据放进DataGridView控件中,发现并不会定义Columns,请大神们指教,谢谢. 解决方案 dgvEmployee.Columns.Add(""第一列"");dgvEmplo

C#控件DataGridView中如何实现类似像QQ表情图片那样的动态效果?

问题描述 C#控件DataGridView中如何实现类似像QQ表情图片那样的动态效果?图片添加上去了但是没有那种动态效果?