
将GRID控件与表绑定,使用的是RECORDSOURCE属性,如果绑定了表,要插入新数据必须通过按钮,在按钮中使用 APPE BLAN 或INSERT BLAN插入一行空行.再输入新数据,修改就直接在GRID上找到那一行进行修改就可以了
这个不是很难的,我先提供一个思路:(我指的是VFP)第一步:将EXCEL数据导入一个数据表,即*.dbf数据表。注:excel表与*.dbf表中字段必须一一对应。
第二步:grid控件中显示数据表中内容。至于grid中显示什么,可以另行按要求设计代码,比如全部显示、部分显示、规定日期范围的内容显示等等。
VB我不熟悉!
//将dgvStudent数据 *** 作更新到数据库private Boolean dbUpdate()
{
string strSql = "select ID as 学号,name as 姓名, class as 班级 from tbl_Student"
//新建一个用于将dgvStudent数据 *** 作更新到数据库的内存表
DataTable dtUpdate= new DataTable()
//新建一个用于更新dgvStudent数据 *** 作的内存表
//利用da初始化dtUpdate的表结构(和数据)
SqlDataAdapter da = new SqlDataAdapter(strSql, sqlCon)
da.Fill(dtUpdate)
//初始化的数据需清除,以存放更新后的dgvStudent数据
dtUpdate.Rows.Clear()
//再建一个内存表,用于将更新后的dgvStudent数据逐条读取出来存入更新内存表中
DataTable dtShow = new DataTable()
//逐条读取出来存入更新内存表中
dtShow = (DataTable) dgvStudent.DataSource
for (int i = 0i <dtShow.Rows.Counti++)
{
dtUpdate.ImportRow(dtShow.Rows[i])
}
try
{
this.sqlCon.Open()
//使对DataSet所做的更改与关联的SQL Server数据库相协调
SqlCommandBuilder sqlCbld
sqlCbld = new SqlCommandBuilder(da)
//通过该da将更新后的dgvStudent数据(即已复制的dtUpdate)更新到数据库
da.Update(dtUpdate)
sqlCon.Close()
}
catch(Exception ex)
{
MessageBox.Show("数据库 *** 作失败:" + ex.Message.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
return false
}
dtUpdate.AcceptChanges()
return true
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)