1

我有多个页面的申请人项目,因为用户将通过这些页面完成他的申请人数据,然后在最后一页他会找到提交数据。

我的问题是,我有多个表,当用户提交他的数据时,数据将插入到它的表中,那么我怎样才能为所有这些表创建一个存储。

4

2 回答 2

1

您使用的是 .NET 框架吗?如果有,是什么版本?

如果您使用 .NET > 3.5 + MS SQL 2008,您可以使用表值参数

于 2012-12-11T10:15:27.220 回答
1

如果要一次插入/更新多个表,最好使用存储过程。创建/读取/更新/删除 (CRUD) 存储过程通常是很好的做法,可以降低 SQL 注入攻击的风险。

以下是您的 Create (insert) 存储过程的样子(它不完整且未规范化):

CREATE PROCEDURE [dbo].[ApplicantIns]
(   
    @Name   nvarchar(50)
    ,@Skill nvarchar(5)
    ,@Age   int
    ,@comment nvarchar(50)
)
AS
    SET NOCOUNT ON;

    INSERT INTO [dbo].[Applicant]([name]) VALUES(@Name);

    INSERT INTO [dbo].[Skillset]([Skill], [Comment]) VALUES(@Skill,@Comment);

    INSERT INTO [dbo].[Statistics]([Age]) VALUES (@Age);

然后,当有人提交新应用程序时,您可以调用此存储过程。

于 2012-12-11T10:22:35.903 回答