2012-12-11 3 views
1

사용자가이 페이지를 통해 신청자 데이터를 완료하고 마지막 페이지에서 데이터 제출을 요청할 때 여러 페이지가 지원자 프로젝트에있었습니다.여러 테이블에 대해 하나의 인서트를 생성합니다.

내 문제는 여러 테이블을 가지고 있고 사용자가 자신의 데이터를 제출하면 데이터가 테이블에 삽입되므로 어떻게 이러한 모든 테이블에 대해 하나의 테이블을 만들 수 있습니까?

+0

SQL Server에서 프로 시저를 만들어 데이터를 가져 와서 원하는 테이블에 저장하십시오. –

답변

1

을 사용할 수 있습니다 사용하고, 당신은 저장 프로 시저를 사용하여 더 나을 것입니다. CRUD (Create/Read/Update/Delete) 저장 프로 시저는 일반적으로 좋은 방법이며 SQL 주입 공격의 위험을 줄입니다.

은 여기 만들기 (삽입) 저장 프로 시저 (불완전 및 표준화의)처럼 보일 수있는 작업은 다음과 같습니다 누군가가 새 응용 프로그램을 제출하면

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); 

당신은 다음이 저장 프로 시저를 호출 할 수있다.

1

.NET Framework를 사용하고 있습니까? 그렇다면 어떤 버전입니까?

경우 당신은 당신이 한 번에/업데이트 여러 테이블을 삽입 할 경우 .NET이> 3.5 + MS SQL 2008 당신이 table valued parameters

+0

.net 3.5 및 sql server2005를 사용했습니다. – Egydeveloper

관련 문제