這是我的存儲過程:MS SQL Server存儲過程錯誤「不正確的語法」
ALTER PROCEDURE its.sp_WriteTransaction
(
@LoginID int,
@PersonID int,
@BusinessID int,
@TransType smallint,
@LastHost varchar(15),
@TransData varchar(255)
)
AS
DECLARE @TransDate DATETIME
SET @TransDate = GETDATE()
INSERT INTO Transactions (LoginID, PersonID, BusinessID, TransDate, TransType, LastHost, TransData)
VALUES (@LoginID, @PersonID, @BusinessID, @TransDate, @TransType, @LastHost, @TransData)
RETURN
這是我的電話線:
sql = "sp_WriteTransaction" & " " & Session("UserID") & "," & Session("PersonID") & "," & Session("bizID") & "," & TransType & "," & ClientIP & "," & TransData
但每次我運行它,我得到以下錯誤信息:
錯誤消息:
錯誤類型: 微軟OLE SQL Server的數據庫提供程序(0x80040E14) 第1行:「.0」附近的語法不正確。 /etearsheets/authorize/CheckAccess.asp,line 1163
導致'.0'錯誤的IP格式有什麼問題,我該如何糾正它?
感謝R.
**不要一直使用**使用「sp_」作爲存儲的參數名稱前綴!如果你這樣做的話,微軟很生氣!這是一個微軟保留的前綴,如果你真的使用它,你只是要求麻煩!使用「proc_」或別的東西 - 或根本沒有前綴。 – 2009-08-19 05:11:28
實際上我沒有選擇,我正在根據公司文檔構建這些存儲過程,並且'sp_'問題與SQL Server 7.0 Service Pack 4有關,我們在V.09.00.3042上。不過謝謝你的提升,我會記住。 – flavour404 2009-08-19 19:50:43
此代碼易受sql注入影響 – 2011-12-01 19:42:29