c#开发旅程

收集了所有我自己开发历程使用到过的所有点点滴滴 可能有时引用了他人的文章而没有注明请见谅

博客园 首页 联系 订阅 管理
样写一个存储过程类来实现C#中对存储过程的调用?

--------------------------------------------------------------------------------

Q: 怎样写一个存储过程类来实现C#中对存储过程的调用?

A: 假设数据表为UserDataStore,存储过程InsertUserData如下:

CREATE PROCEDURE InsertUserData
@UserName NVARCHAR(50) = NULL,
@UserInfo NVARCHAR(4000) = NULL

AS
SET XACT_ABORT ON
BEGIN TRANSACTION
INSERT INTO [UserDataStore]
VALUES (@UserName,@UserInfo)
COMMIT TRANSACTION
RETURN 0
GO
则相应的程序为:

...
public bool InsertUserData(DataSet userData)
{
    OleDbCommand insertCommand=new OleDbCommand("InsertUserData",dsConnection);
    insertCommand.CommandType=CommandType.StoredProcedure;
    insertCommand.Parameters.Add("@UserName",OleDbType.VarWChar,50,"UserName");
    insertCommand.Parameters.Add("@UserInfo", OleDbType.VarWChar,4000,"UserInfo");
    dsCommand.InsertCommand=insertCommand;
    try
    {
        dsCommand.InsertCommand=this.GetInsertCommand();
        dsCommand.Update(userData,"UserDataStore");
        userData.AcceptChanges();
        return (true);
    }
    catch(Exception e)
    {
        throw e;
    }
}

posted on 2005-05-28 21:41  Kinbor  阅读(593)  评论(0编辑  收藏  举报