什么是@ in Sqlparameter objName = new Sqlparameter(“@ jobfolder”,SqlDbType.Text)

时间:2010-08-09 19:16:18

标签: sql sql-server

Sqlparameter objName = new Sqlparameter ("@jobfolder", SqlDbType.Text)

中的 @ 是什么

4 个答案:

答案 0 :(得分:4)

@只是sql server识别参数(变量)的方法

您正在运行的SQL将如下所示:

SELECT * FROM MYTABLE
WHERE MYCOLUMN = @jobfolder

答案 1 :(得分:0)

在T-SQL中,@符号用于变量以识别它们。

MSDN(Transact-SQL变量,在声明Transact-SQL变量下):

The DECLARE statement initializes a Transact-SQL variable by: 

 - Assigning a name. The name must have a single @ as the first character.
 - Assigning a system-supplied or user-defined data type and a length. For numeric variables, a precision and scale are also assigned. For variables of type XML, an optional schema collection may be assigned.
 - Setting the value to NULL.

通过代码传入的变量名称应该与存储过程/ prepared语句中的变量名称匹配,因此也需要@

答案 2 :(得分:0)

SQL Server参数名称的必需第一个字符。

答案 3 :(得分:0)

感谢你。我还根据您的回答在线发现了这些信息“您可能知道,ADO提供了两种提供存储过程的方法 带参数值。在第一种方法中,您可以参考参数 直接命名并简单地指定一个值。在第二个,你建立 从头开始的一个Parameter对象,并将其添加到Command对象中 参数集合。

请注意,使用命名参数时,必须提供 @字符,位于每个SQL Server参数名称之前, 像这样:

cmd.Parameters(“@ someParam”)= 250

另一方面,从头开始构建Parameter对象时, 你不需要提供@ charcter,如下所示:

设置param = cmd.CreateParameter(“someParam”,adBigInt,adParamInput,2,250) cmd.Parameters.Append param“