日期:2014-05-18  浏览次数:20905 次

如何写一个C#类 使用存储过程添加数据的时候并返回ID
如何写一个C#类 使用存储过程添加数据的时候并返回ID

------解决方案--------------------
SqlHelper
------解决方案--------------------
返回什么ID啊。
SQL code

create proc InsertData
@myid int output,
--....其他你插入的参数
AS
  Insert into 表 Values(对应参数)
  select @myid=@@IDENTITY   --这个是输出自增ID到OUTPUT参数出去。
GO

------解决方案--------------------
1.以下是存储过程
------------------------------------
--用途:增加一条记录 
--项目名称:CodematicDemo
--说明:
--时间:2008-5-19 10:05:13
------------------------------------
CREATE PROCEDURE MY_Job_ADD
@JobID int output, -----自动增长编号,输出参数
@JobClassID int,
@JobName nvarchar(100)

 AS 
INSERT INTO Job(
[JobID],[JobClassID],[JobName]
)VALUES(
@JobID,@JobClassID,@JobName
)
SET @JobID = @@IDENTITY



GO
 
2.下面是程序:

在数据层写如下代码返回自动增长的编号ID
/// <summary>
/// 增加一条数据
/// </summary>
public int Add(rzrs.Model.Job model)
{
int rowsAffected;
SqlParameter[] parameters = {
new SqlParameter("@JobID", SqlDbType.Int,4),
new SqlParameter("@JobClassID", SqlDbType.Int,4),
new SqlParameter("@JobName", SqlDbType.NVarChar,50)};
parameters[0].Direction = ParameterDirection.Output;
parameters[1].Value = model.JobClassID;
parameters[2].Value = model.JobName;

DbHelperSQL.RunProcedure("MY_Job_ADD",parameters,out rowsAffected);
return (int)parameters[0].Value;
}