我有多个页面的申请项目,因为用户将浏览这些页面以完成他的申请人数据,然后在最后一页他会发现提交数据。
我的问题是,我有多个表,当用户提交他的数据时,数据会插入到它的表中,所以如何为所有这些表创建一个表。
答案 0 :(得分:1)
您使用的是.NET Framework吗?如果是这样,版本是什么?
如果您使用的是.NET> 3.5 + MS SQL 2008,您可以使用table valued parameters
答案 1 :(得分:1)
如果要一次插入/更新多个表,最好使用存储过程。创建/读取/更新/删除(CRUD)存储过程通常是很好的做法,可以降低SQL注入攻击的风险。
这是您的Create(插入)存储过程可能看起来的样子(它是不完整和非标准化的):
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);
然后,当有人提交新应用程序时,您可以调用此存储过程。