这是我的存储过程: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