sql语句中变量的重复定义

imhere_l 2000-09-07 04:14:00
如何在SQL SERVER的存储过程中重复声明同一个变量?
create procedure test @var_1 varchar(10)
as
if @var_1='1' declare @var_name integer
if @var_1='2' declare @var_name float
if @var_1='3' declare @var_name varchar(30)

过程生成时系统会报错,说变量@var_name已经存在。
...全文
250 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
iforever 2000-09-08
  • 打赏
  • 举报
回复
你仔细再查一下你用的SQL SERVER 所支持的转换函数.不可能没有的.

ORACLE\INTERBASE\DB2都有.

MS SQL SERVER不会没有吧.
imhere_l 2000-09-08
  • 打赏
  • 举报
回复
考虑这样处理是因为@var_name是通过select语句得到的运算结果。我试了一下,如果是整型,可以,但如果是float就不行。
iforever 2000-09-07
  • 打赏
  • 举报
回复
你列举的这几个类型都可以定为VARCHAR , 然后根据你@var_1,在SQL里转一下不就得了
imhere_l 2000-09-07
  • 打赏
  • 举报
回复
其实也没有真正的重复定义:只会满足其中的一个条件,并且执行其中的一个声明语句。
如果的确无法解决,又有必要实现类似的功能,怎么办?分成若干过程?
guoyiqian 2000-09-07
  • 打赏
  • 举报
回复
sql语句中变量不可以重复定义

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧