CrazyAnt 发表于 2007-11-6 09:05:09

临时表的问题

各位达人: <br/>一个这样的存储过程 <br/>create &nbsp; proc &nbsp; sp_Test <br/>as <br/>&nbsp; if &nbsp; object_id( 'tempdb..Test ') &nbsp; is &nbsp; not &nbsp; null <br/>&nbsp; begin &nbsp; <br/>&nbsp; &nbsp; &nbsp; &nbsp; select &nbsp; * &nbsp; from &nbsp; tempdb..Test <br/>&nbsp; end <br/>begin <br/><br/>其中的表tempdb..Test不存在 <br/><br/>我有想建立这个存储过程,该怎么办啊?

guilber 发表于 2007-11-14 09:38:41

<p>create procedure sp_test<br/>as<br/>&nbsp; declare @v_sql varchar(50)<br/>begin<br/>&nbsp; select @v_sql='select * from tempdb..test'</p><p>&nbsp; if object_id('tempdb..test') is not null<br/>&nbsp;&nbsp;&nbsp; exec(@v_sql)<br/>&nbsp; else<br/>&nbsp;&nbsp;&nbsp; select 'tempdb..test is not exist' <br/>end<br/>go<br/></p>

CrazyAnt 发表于 2007-11-14 10:22:40

<p>谢谢,</p><p>这种写法我也知道,但现在客户的代码是上面那种形式的,老大又不让改,郁闷.</p>

ehxz 发表于 2007-11-14 10:39:33

<p>把存储过程导成SQL,然后在SQL前面加上相应的建表语句,再用ISQL或别的方法直接导入SQL来建存储过程。</p><p>我们以前公司的人有这么做过,一般这样的存储过程是在编程的时候调用的,前面的临时表在别的地方建好的,这里直接调用。</p>

CrazyAnt 发表于 2007-11-14 15:42:25

<p>谢谢老大</p><p>那还需要另外一个存储过程来建立这个临时表,在服务器启动时运行对不?</p><p>tempdb里面的object 会在什么服务器重启时消失的</p>

guilber 发表于 2007-11-14 15:56:54

<p>你手里肯定维护了某个业务的一系列脚本,比如建表、存储过程...</p><p>你可以在建表脚本里面增加创建Test的内容,然后再创建sp_Test</p><p>要么表事先已经存在,然后创建过程</p><p>要么就是在过程中使用动态SQL了</p>

CrazyAnt 发表于 2007-11-6 13:11:14

<p>环境是xp+Sybase 12.5.1</p>

CrazyAnt 发表于 2007-11-16 12:07:58

<p>我也认为客户有这个脚本,可是他们说不能提供,</p><p>谢谢你</p>

lovelyni 发表于 2007-12-19 21:16:38

顶了
页: [1]
查看完整版本: 临时表的问题

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com