1
아래 붙여 넣기는 SQL Server 2005로 작성된 저장 프로 시저입니다. 내 의도는 마법사 컨트롤을 사용하여 ASP.NEt 웹 응용 프로그램에서이 sproc을 호출하는 것입니다. SQL Server를 처음 사용하고 특히 저장 프로 시저에 익숙합니다. 왜 내 매개 변수를 웹 응용 프로그램에서 사용할 수 없으며 내 sproc 이름에서 매개 변수로 SSMS treeview에 표시되지 않는지 확실하지 않습니다. 매개 변수가 올바르게 인스턴스화되어 내 웹 응용 프로그램에서 사용할 수 있도록 아래의 sproc을 수정하도록 도와 줄 수 있습니까?선언 한 후에 사용할 수없는 저장 프로 시저 매개 변수
감사합니다, 시드
저장 프로 시저 구문 :
USE [Diel_inventory]
GO
/****** Object: StoredProcedure [dbo].[AddQuote] Script Date: 05/09/2010 00:31:10 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[AddQuote] as
Declare @CustID int,
@CompanyName nvarchar(50),
@Address nvarchar(50),
@City nvarchar(50),
@State nvarchar(2),
@ZipCode nvarchar(5),
@Phone nvarchar(12),
@FAX nvarchar(12),
@Email nvarchar(50),
@ContactName nvarchar(50),
@QuoteID int,
@QuoteDate datetime,
@NeedbyDate datetime,
@QuoteAmt decimal,
@ID int,
@QuoteDetailPartID int,
@PartNumber float,
@Quantity int
begin
Insert into dbo.Customers
(CompanyName, Address, City, State, ZipCode, OfficePhone, OfficeFAX, Email, PrimaryContactName)
Values (@CompanyName, @Address, @City, @State, @ZipCode, @Phone, @FAX, @Email, @ContactName)
set @CustID = scope_identity()
Insert into dbo.Quotes
(fkCustomerID,NeedbyDate,QuoteAmt)
Values(@CustID,@NeedbyDate,@QuoteAmt)
set @QuoteID = scope_identity()
Insert into dbo.QuoteDetail
(ID) values(@ID)
set @ID=scope_identity()
Insert into dbo.QuoteDetailParts
(QuoteDetailPartID, QuoteDetailID, PartNumber, Quantity)
values (@ID, @QuoteDetailPartID, @PartNumber, @Quantity)
END
감사합니다 제프! 지금 볼 수있는 파들. 이제 오류가 발생합니다 : IDENTITY_INSERT가 OFF로 설정된 경우 'QUOTEDETAIL'테이블의 ID 열에 대해 명시 적 값을 삽입 할 수 없습니다. Identity_Insert는 어디에서 바꿀 수 있습니까? – SidC
귀하의 프로 시저에서 추측 할 수있는 것으로부터 QuoteDetail 테이블에는 마지막으로 삽입 된 @quoteID와 일치해야하는 ID 열이 있지만 자동 증가 IDENTITY 열입니다. 그건 나에게 이해가 안되네 - 당신이 QuoteDetail 테이블을 어떻게 사용하고 있는지 응용 프로그램에 익숙한 사람이 검토 할 것을 제안합니다. 이를 수행하는 방법에 대한 링크는 다음과 같습니다 .http : //msdn.microsoft.com/en-us/library/aa259221(SQL.80) .aspx -하지만 옳은 일이 아닌 것 같습니다. –