请教高手!如何执行带条件SQL语句?

IFEELGOOD 2002-03-29 11:42:03
我想用PB的execute immediate :s using transactionobject;方法来执行SQL语句
但SQL语句是带条件的,E。g.要实现如下意图:
1。如数据存储sp_test存在则删除它
2。创建数据存储sp_test
1必须先执行,请问PB可执行的SQL语句如何写?
...全文
70 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gungod2000 2002-03-29
  • 打赏
  • 举报
回复
ls_sql = 'if exists(select 1 from sysobjects where name = 'sp_test')
drop sp_test
else
create procedure sp_test
'
hecf 2002-03-29
  • 打赏
  • 举报
回复

斗胆说一句。

先把你需要完成的功能写为一个过程,通过PB写入DB。之后调用执行。最后再删除这个过程。注意过程名称的命名。

请验证:CREATE PROCEDURE里面的一堆东东,能否通过执行execute immediate 完成?
cdqy 2002-03-29
  • 打赏
  • 举报
回复
干嘛不在数据库中写而要到PB中写???
IFEELGOOD 2002-03-29
  • 打赏
  • 举报
回复
如果单条语句没问题,但我想实现通过一SQL文本文件来生成一批数据存储过程及视图等,应当如何?你如果试一下的话会发现,CREATE PROCEDURE语句必须单独执行,否则会出现以下提示:
'CREATE PROCEDURE' must be the first statement in a query batch
IFEELGOOD 2002-03-29
  • 打赏
  • 举报
回复
如果只是执行单条语句应当没问题,但我想根据一SQL文本文件来创建一批
存储过程及视图等, 该用什么样的方法?因为你如果试一下的话会发现create procedure语句必须与其他语句分开单独执行,否则会提示:
‘CREATE PROCEDURE’must be the first satement in a query batch.

401

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 非技术版
社区管理员
  • 非技术版社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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