zoukankan
html css js c++ java
/*把更改写回数据库DataAdapter.Update*/
把更改写回数据库DataAdapter.Update
/**/
/*
把更改写回数据库DataAdapter.Update
*/
/**/
/*
Important: 这种在DataTable中进行的插入、更新和删除并不会自动写回数据库
*/
SqlDataAdapter adapter
=
new
SqlDataAdapter(strSql, strConn);
SqlCommandBuilder builder
=
new
SqlCommandBuilder(adapter);
DataSet ds
=
new
DataSet();
adapter.Fill(ds,
"
Titles
"
);
//
插入记录
DataTable table
=
ds.Tables[
"
Titles
"
];
DataRow row
=
table.NewRow();
row[
"
Title_id
"
]
=
"
JP1001
"
;
row[
"
title
"
]
=
"
programming Microsoft .NET
"
;
row[
"
price
"
]
=
59.99m
;
row[
"
ytd_sales
"
]
=
100000
;
row[
"
type
"
]
=
"
business
"
;
row[
"
pubdate
"
]
=
new
DateTime(
2002
,
5
,
1
);
table.Rows.Add(row);
//
更新数据库
adapter.Update(table);
/**/
/*
DataAdapter的Update方法检查传递给表的每一条记录,把自从上次更新
* (或自从上次调用table的AcceptChanges方法后)被插入、更新或删除的行
* 写回数据库。如果DataSet中包含了多个被修改的DataTable,就把整个DataSet
* 传给Update方法: adapter.Update(ds),所有改变会被一次性写回。
*/
/**/
/*
* 哦,还有许多演示DataAdapter.Update的用法的示例,演示了通过调用名为GetChanges
* 的方法创建一个只含有被插入、更新或删除行的新的临时DataSet或者DataTable
* ,然后把delta传递给DataAdapter.Update,如下:
* //更新数据库
* DataTable delta = table.GetChanges();
* adapter.Update(delta);
* 这种方法的确好用,但不是必需的。Update会忽略包含已修改和未修改的行的DataTable中
* 未被修改的行。
* 当要控制写回数据库中的更改的内容的顺序时,GetChanges方法发挥作用,
* 如果想在Insert前面执行Delete,以避免主键重复错误,应该这样做:
*/
//
DataRowState ---->enum System.Data.DataRowState
//
DataRowState.Deleted---->the row was deleted
//
using the row.Delete()
DataTable deletes
=
table.GetChanges(DataRowState.Deleted);
adapter.Update(deletes);
DataTable inserts
=
table.GetChanges(DataRowState.Added);
adapter.Update(inserts);
/**/
/*
GetChanges的另一个用处是,
* 当更新不是在本地执行时,把机器间的数据传输量减到最小,
* 只传递被改变的DataSet或DataTable比传递整个DataSet或DataTable更高效
*/
查看全文
相关阅读:
HTML元素解释
Java命名规范
HDU 1058 Humble Numbers(DP,数)
HDU 2845 Beans(DP,最大不连续和)
HDU 2830 Matrix Swapping II (DP,最大全1矩阵)
HDU 2870 Largest Submatrix(DP)
HDU 1421 搬寝室(DP)
HDU 2844 Coins (组合背包)
HDU 2577 How to Type(模拟)
HDU 2159 FATE(二维完全背包)
原文地址:https://www.cnblogs.com/simhare/p/826466.html
最新文章
django+xadmin在线教育平台(五)
黑盒测试法——等价类划分法(修改版)
django+xadmin在线教育平台(四)
django+xadmin在线教育平台(三)
django+xadmin在线教育平台(二)
django+xadmin在线教育平台(一)
7- vue django restful framework 打造生鲜超市 -商品类别数据展示(上)
黑盒测试法——等价类划分法
6- vue django restful framework 打造生鲜超市 -完成商品列表页(下)
STL初探——第一级配置器 __malloc_alloc_template的学习心得
热门文章
STL初探——空间的配置与释放std::alloc
MFC——获取文件夹下的所有文件并显示在CListCtrl上
MFC——选择图片显示到Picture Control
STL初探——构造和析构的基本工具: construct()和destroy()
STL初探——空间配置器
STL初探——设计一个简单的空间配置器
设计模式之观察者模式(Observer Pattern)
设计模式之策略模式(Strategy Pattern)
设计模式之模板方法模式(Template Method Pattern)
C#简单三层架构
Copyright © 2011-2022 走看看