本演练演示如何使用DataSet更新数据库。它假定以下存储过程已在被引用的数据库中被创建。
CREATE PROCEDURE AddProduct
(
@ProductName nvarchar(50),
@CategoryID int,
@UnitPrice money
)
AS
INSERT INTO Products (ProductName, CategoryID, UnitPrice)
VALUES (@ProductName, @CategoryID, @UnitPrice)
SELECT ProductID, ProductName, CategoryID, UnitPrice
FROM Products
WHERE ProductID = SCOPE_IDENTITY()
GO
CREATE PROCEDURE DeleteProduct
(
@ProductID int
)
AS
DELETE Products
WHERE ProductID = @ProductID
GO
CREATE PROCEDURE UpdateProduct
(
@ProductID int,
@ProductName nvarchar(50),
@LastUpdate datetime
)
AS
UPDATE Products
SET ProductName = @ProductName
WHERE ProductID = @ProductID AND LastUpdate = @LastUpdate
IF @@ROWCOUNT > 0
-- This statement is used to update the DataSet if changes are done
-- on the updated record (identities, timestamps or triggers )
SELECT ProductID, ProductName, CategoryID, UnitPrice
FROM Products
WHERE ProductID = @ProductID
GO
1、配置数据库。必要的步骤,请参阅数据访问快速入门。
2、创建Database(当你不使用统一的集成方法)。下面的代码使用工厂创建一个默认的配置数据库对象。
3、检索添加以下代码初始数据集。
4、修改通过添加下面的代码集。
5、以下代码显示了如何创建DbCommand对象,插入一个新的产品,删除产品,并更新DataSet中的数据。
6、添加以下代码提交DataSet,显示如何使用DataSet中缓存本地数据集更新数据库。
文章由唐勇(http://www.tangyong.net/)翻译自微软Enterprise Library系列英文文档,翻译得辛苦,转载请保留,谢谢!