适合初学者,0基础;
题目:
利用DataGridView控件和ADO.NET完成数据的显示,删除,修改等;
最终运行的效果如图所示:
步骤:
1.首先同样步骤:打开vs2010,File->new->project->windows Form Application
2.从toolbox中拖动dataGridView控件到窗体中,调整到合适大小;
3.然后编写代码阶段;双击form,编写form 的load事件;
1.首先先是连接数据库,连接成功后,选择数据库中的所有内容,显示到datagridview中;
首先要注意的是,要在前面加入如下引用:using System.Data.SqlClient;
2.设置三个按钮,一个查询,一个保存修改,一个删除;
3.在双击每个按钮,编写按钮的click事件,完成才查询,修改,删除;
最终的代码如下所示:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace FormDabase
{
public partial class Form1 : Form
{
string conString;
SqlConnection sqlCon;
string selectStr;
SqlCommand cmd;
SqlDataAdapter sda;//dataadapter类表示一组SQL命令和一个数据库连接,他们用于填充DataSet和更新数据源
//她用作DataSet和数据源之间的桥接器一遍检索和保存数据,她通过映射Fill和Update方法来提供这样桥接器
DataSet ds;//数据集
DataTable dTable;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)//编写form的load事件
{
//连接数据库的步骤:command对象对数据源执行增删改查操作
conString = "server=localhost;database=greenhouse;uid=sa;pwd=123;";//连接数据库的字符串
sqlCon = new SqlConnection(conString);
sqlCon.Open();
selectStr = "select * from house";
sda = new SqlDataAdapter();
cmd = new SqlCommand(selectStr, sqlCon);
sda.SelectCommand = cmd;
dTable = new DataTable();
sda.Fill(dTable);
dataGridView1.DataSource = dTable;
}
private void button1_Click(object sender, EventArgs e)
{
sda.SelectCommand.CommandText = "select * from house where hou_name like '" + textBox1.Text+"%'";//需要注意的是查询字串的写法,注意‘’不要丢掉
dTable.Clear();
sda.Fill(dTable);
}
private void button2_Click(object sender, EventArgs e)
{
SqlCommandBuilder scb = new SqlCommandBuilder(sda);
sda.Update(dTable);
}
private void button3_Click(object sender, EventArgs e)
{
if(MessageBox.Show("您确定删除?","删除?",MessageBoxButtons.YesNo,MessageBoxIcon.Warning)==DialogResult.Yes)
{
int row=dataGridView1.CurrentRow.Index;//获取当前行的索引值
DataRow dr=dTable.Rows[row];//获取当前行
dr.Delete();
//实现同步更新
SqlCommandBuilder scb=new SqlCommandBuilder(sda);
sda.Update(dTable);
}
}
}
}
附:整个的工程源码在我的资源中,可下载。