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 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 sp = new SqlParameter(); da.DeleteCommand = conn.CreateCommand(); da.DeleteCommand.CommandText = "delete region where regionid=@id"; sp = da.DeleteCommand.Parameters.Add("@id", SqlDbType.Int, 4, "regionid"); sp.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 sp = 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"); sp = da.UpdateCommand.Parameters.Add("@oldid", SqlDbType.Int, 4, "regionid"); sp.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("修改失败!"); } } }}