我正在查看另一个程序员在调用存储过程时所做的一些代码。在调用它之前,他创建了一个Array,其中包含存储过程查询表所需的参数。他创建了这样的数组:
param = Array("@Name", 3, 8, "Tom", _
"@Age", 3, 8, 28, _
"@City", 100, 200, "Toronto)
存储过程使用@ Name,@ Age和@City来查询表。
我的问题是,两者之间的数字是多少?
答案 0 :(得分:2)
看起来像:
@Name =参数名称
3 = adInteger
8 =长度
“汤姆”=值
@ Age =参数名称
3 = adInteger
8 =长度
28 =值
@ City =参数名称
100 =长度
200 = adVarChar
“多伦多=价值
以下是其他ADO数据类型的列表 -
答案 1 :(得分:0)
没有评论,无法确定或不通过代码就无法知道。
否则,如果这是asp.net,你可以做的最好的是查看SqlParameter
类并查看它可用的属性:
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlparameter.aspx
我认为ParameterName
和Value
有两个强有力的候选人,但这两个数值可能是一些不同的东西。 3
恰好是SqlDbType.Char
的数值,而100
没有对应的SqlDbType
,该类型的默认值为NVarChar.
下一个数字可能是精确的。查看数据库表,看看是否可以将这些值与字段匹配。例如,是城市VarChar(200)
?
答案 2 :(得分:0)
我的猜测是他正在使用一系列参数,就像这样:https://stackoverflow.com/a/10142254/2385,我使用一系列参数传递给一个将参数添加到ADO命令的函数。