标题:怎样使存储过程变“活”
只看楼主
小牛
Rank: 1
等 级:新手上路
威 望:1
帖 子:434
专家分:8
注 册:2006-10-1
结帖率:81.48%
 问题点数:0 回复次数:5 
怎样使存储过程变“活”
这是我建立的一个存储过程:

CREATE PROCEDURE jlbiao AS
if exists (select *from sysobjects where name='ds')
begin
drop table ds
end
create table ds
(stuno int,
stuname char(10),
stuage int check(stuage>15 and stuage<30),
)

第一次调用它可以建立一个名为“ds”表。
请问各位大哥:
在下一次调用它时,我想建立另一张表
应该怎么办?
搜索更多相关主题的帖子: stuage int table name PROCEDURE 
2006-10-03 19:29
神经塔
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:1986
专家分:4
注 册:2006-7-1
得分:0 

还是这样写就行,因为你在你的语句上面有删除表的功能了@!


[shadow=255,red,2]待到秋来九月八,我花开时百花杀。冲天香阵透长安,满城尽是黄金甲。 [/shadow]
2006-10-04 10:10
小牛
Rank: 1
等 级:新手上路
威 望:1
帖 子:434
专家分:8
注 册:2006-10-1
得分:0 
我不想删原表,第二次建立一个新表,名字不是ds,是别的表。

本店经营各类国际品牌运动鞋,板鞋,休闲鞋,有李宁,nike,匹克,阿迪达斯。
2006-10-04 10:46
小牛
Rank: 1
等 级:新手上路
威 望:1
帖 子:434
专家分:8
注 册:2006-10-1
得分:0 
比如把存储过程某个元素做成变量,
在下一次调用的时候对变量赋新值。

本店经营各类国际品牌运动鞋,板鞋,休闲鞋,有李宁,nike,匹克,阿迪达斯。
2006-10-04 10:52
kkzjk
Rank: 1
等 级:新手上路
威 望:1
帖 子:78
专家分:0
注 册:2006-7-27
得分:0 
用另外一个存储过程调用这个存储过程。把那个ds换成参数

苦尽甘来!
2006-10-04 13:23
LouisXIV
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:789
专家分:0
注 册:2006-1-5
得分:0 
--未测试,只限自由更换表名,表结构无法变换
--调用方法exec jibiao 'tablename'

CREATE PROCEDURE jlbiao
(@tablename)
AS
declare @sql varchar(8000)
select @sql=
'if exists (select * from sysobjects where name='''+@tablename+''')
begin
drop table '+@tablename+'
end
create table '+@tablename+'
(stuno int,
stuname char(10),
stuage int check(stuage>15 and stuage<30),
)'
exec (@sql)

2006-10-06 08:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-94102-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.190448 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved