我有sproc將執行插入到2表和第一個表主鍵將被插入到地址表中(這將與其他5個表共享),作爲地址id,當我嘗試將特定的聯繫信息司機,學生..等等。 人們可能會說Scope_Identity,如果我只有2個表,但是當我嘗試插入地址scope_ Scope_Identity的表學生或驅動程序時,我可能會得到重複或主鍵違例,這很好。 任何想法如何去做到這一點,以便能夠插入驅動程序,學生..等主鍵到地址表BE建議該鍵將從文本框中插入窗口形式或任何人可以建議如何去這樣操作,我該如何提高存儲過程我如何去主鍵值插入到另一個表主鍵?
波紋管是我的存儲過程,因爲沒有標識列未設置
USE [GlobalReachCare]
GO
/****** Object: StoredProcedure [dbo].[main_Escort_Insert] Script Date: 19/04/2014 09:07:28 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[main_Escort_Insert]
-- Add the parameters for the stored procedure here
@EscortID int,
@FirstName varchar(50),
@Surname varchar(50),
@CrbCheck bit = 0,
@CrbRef varchar(25) = false,
@ExpiryDate date = null,
@Training bit = false,
@TrainingType bit = false,
[email protected] int,
@Address1 varchar(20),
@Address2 varchar(20)= null,
@Address3 varchar(20) = null,
@City varchar(16),
@PostCode varchar(16),
@Email varchar(50) = null,
@Telephone nvarchar(20),
@DateOfBirth date= null,
@NationalIN nvarchar(25)
AS
BEGIN
DECLARE @Escort int
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
Insert Into dbo.tb_EscortsDetails(EscortId,FirstName,Surname, [CRB_Check], [CRB_Ref],ExpiryDate, Training, TrainingType)
VALUES(@EscortId,@FirstName,@Surname,@CrbCheck,@CrbRef,@ExpiryDate,@Training,@TrainingType)
set @Escort = SCOPE_IDENTITY()
insert into tb_Addresses(AddressID,Address1,address2,Address3,City,PostCode,Email,Telephone,DateOfBirth
,NationalINO)
Values(@Escort,@Address1,@Address2,@Address3,@City,@PostCode,@Email,@Telephone,@DateOfBirth,@NationalIN)
END
是否在tb_Addresses中使用了主鍵? –
真的很難理解你在問什麼,你可以在表格和預期結果中顯示樣本數據嗎? – Tanner