我寫了下面的存儲過程在SQL Server 2005中,我得到錯誤信息:消息102,15級,狀態1,
消息102,級別15,狀態1,過程sp_InsertCustTrans,12號線
不正確'@TrID'附近的語法。
我的存儲過程是:
ALTER PROCEDURE [dbo].[sp_InsertCustTrans]
-- Add the parameters for the stored procedure here
@CuID int, @TrType nvarchar(10), @TrAmt int
AS
BEGIN
SET NOCOUNT ON;
declare @TrID int;
Select @TrID = MAX(TransactionID) from CustTrans;
if Isnull(@TrID)
@TrID = @TrID + 1
else
@TrID = 1
-- Insert statements for procedure here
if (@TrType = 'Deposit')
begin
INSERT INTO CustTrans (TransactionID, TransactionDate, CustID, TransactonType, CreditAmount)
Values(@TrID, GetDate(), @CuID, @TrType, @TrAmt);
end
else
begin
INSERT INTO CustTrans (TransactionID, TransactionDate, CustID, TransactonType, DebitAmount)
Values(@TrID, GetDate(), @CuID, @TrType, @TrAmt);
end
END
GO
手動增加ID是一個可怕的想法,並對比賽條件開放。我假設你有一個同步計劃? – ChaosPandion