CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  疑难问题

如何在存储过程中使用参数

楼主beckham0571()2006-06-04 12:33:11 在 MS-SQL Server / 疑难问题 提问

目前小弟需要写这样一个存储过程,根据输入参数,修改一张表的已有结构,不知道如何根据参数的不同执行不同的操作吗,我在引用操作的时候总是报错。(第   34   行:   '@所属表'   附近有语法错误。),请高手指点一下,谢谢  
  create   PROCEDURE   spAddZhibiao  
  (  
  @指标中文名     varchar     (50),  
  @所属表     varchar     (50)  
  )  
  as  
           
      if     EXISTS   (SELECT   *     FROM   sysobjects   WHERE   name   =   @所属表)    
      begin  
              if   @字段类型='varchar'  
              begin  
                     
                alter   table   @所属表    
                add     @指标英文名   varchar   (500)  
              end  
              else   if   @字段类型='float'  
              begin  
                  alter   table   所属表    
                  add   指标英文名   float  
              end  
              else    
              begin  
                  alter   table   所属表    
                  add   指标英文名   int  
              end  
           
      end 问题点数:20、回复次数:2Top

1 楼WangZWang(先来)回复于 2006-06-04 12:36:35 得分 0

可以用动态语句实现,如:  
      exec('alter   table   '+@所属表+'  
                      add   '+@指标英文名+'   varchar   (500)')Top

2 楼xeqtr1982(Visual C# .NET)回复于 2006-06-04 12:45:15 得分 0

create   PROCEDURE   spAddZhibiao  
  (  
  @指标英文名     varchar     (50),  
  @所属表     varchar     (50),  
                  @字段类型   varchar(20)  
  )  
  as  
           
      if     EXISTS   (SELECT   *     FROM   sysobjects   WHERE   name   =   @所属表)    
      begin  
              if   @字段类型='varchar'  
              begin  
                  exec('alter   table   '+@所属表+'   add   '+@指标英文名+'   varchar   (500)')  
              end  
              else   if   @字段类型='float'  
              begin  
                  exec('alter   table   '+@所属表+'   add   '+@指标英文名+'   float')  
              end  
              else    
              begin  
                  exec('alter   table   '+@所属表+'   add   '+@指标英文名+'   int')  
              end  
           
      endTop

相关问题

关键词

得分解答快速导航

  • 帖主:beckham0571

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo