存储过程参数类型

时间:2010-11-16 21:22:54

标签: mysql stored-procedures parameters types

我对存储过程的参数类型有疑问。通常,参数的定义如下所示:

in param_test VARCHAR(100)

你知道我是否可以定义这样的参数吗?:

in param_test table.column%type

这样,参数将与特定表的列类型相同。因此,如果列类型从varchar(100)更改为varchar(250),则不必更改存储过程中的参数类型。

我知道在甲骨文中这是可能的,但我不知道它是否在MySQL中。

非常感谢你的时间和帮助。

问候。

2 个答案:

答案 0 :(得分:4)

MySQL不支持该语法。您需要在存储程序中显式声明参数的数据类型。

如果您想保护自己免受将来对varchar列最大长度的更改的影响,可以使用TEXT数据类型作为参数,

答案 1 :(得分:-1)

如何将参数值传递给text数据类型的数据库.. 我正在使用此代码 mysql_CommandLtp.Parameters.Add(“@ prmName”,MySqlDbType.Text); mysql_CommandLtp.Parameters [“@ prmName”]。Value = prmName.ToString()。Trim();