当前
datagridview
实例的
datasource
转换成
datatable
datatable
dt
=
datagridview.datasource
as
datatable
//
if
(dt
==
null)
return
//空数据
不再执行
dt.acceptchanges()
sqldataadapter
da
=
new
sqldataadapter("select
*
from
表名",
"连接字符串")
//
这边的
select
语句要和
你
从数据库获取数据并显示到
datagridview
的一样!
//根据当前
创建
update命令
sqlcommandbuilder
builder
=
new
sqlcommandbuilder(da)
//获得可以用来更新数据源
的
update
命令
da.updatecommand
=
builder.getupdatecommand(true)
//将数据更新回
数据库!
da.update(dt)
请采纳答案,支持我一下。
这个我做的课程设计有用到,是断开连接环境到SQL数据。private void 商店一_商品_Load(object sender, EventArgs e)
{
sqlConn = new SqlConnection("Data Source=ASUS-PC\\SQLEXPRESSInitial Catalog=SUPERMARKETIntegrated Security=True")
/SqlConnection连接到本地服务器ASUS-PC,数据库SUPERMARKET,使用windows身份验证
sqlDa = new SqlDataAdapter("SELECT * FROM dbo.商店一_商品", sqlConn)
//Sql适配器以从表dbo.商店一_商品选择所有列作为命令,绑定到SqlConnection
sqlDs = new DataSet()//为数据集分配内存
sqlDa.Fill(sqlDs, "dbo.商店一_商品")//适配器填充到数据集中的表"dbo.商店一_商品"
dataGridView1.DataSource = sqlDs.Tables["dbo.商店一_商品"]
//dataGridView1以数据集中的表"dbo.商店一_商品"作为其数据源
SqlCommandBuilder sqlCmdBuilder = new SqlCommandBuilder(sqlDa)
//然后用SqlCommandBuilder自动为SqlDataAdapter生成Insert、Update、Delete命令
}
点button1批量更新到数据库:
private void button1_Click_1(object sender, EventArgs e)
{
if (sqlDs.HasChanges())//如果数据集因我们对datagridview的 *** 作发生改变
{
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)