Sybase和Microsoft的SQL Server有什么差别?

xiaotiao 2000-10-04 06:49:00
我在MS SQL Server中好用的一个存储过程到了Sybase中就怎么也不好用了!
主要是语法不对,这是为什么?
存储过程如下:
CREATE PROCEDURE upd_current
@id_checked int output
AS

declare @id_select int

update WAITING set PROCESSING=2, @id_select=NOTE_ID
from (select MIN(convert(int, NOTE_ID)) t1_1 from WAITING where PROCESSING=1) as t1
where CONVERT(int, NOTE_ID)=t1.t1_1

select @id_checked=@id_select

return
请各位大虾指教!
...全文
158 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
cby 2001-03-01
  • 打赏
  • 举报
回复
我现在也是从SQLSERVER转到用SYBASE
如果有什么问题可以发EMAIL给我
我们可以互相探讨
cbypony@sina.com

cby 2001-03-01
  • 打赏
  • 举报
回复
/*SQLSERVER跟SYBASE确实有点不太一样,
在SQLSERVER中可以直接FROM,可SYBASE就不行,可以改成在WHERE语句之后
还有变量也不能直接在UPDATE语句中,就用@@rowcount来判断是否有更新,就可以了
还有你的过程后的左右括号要写
*/
CREATE PROCEDURE upd_current
(@id_checked int output)
AS

declare @id_select int

update WAITING set PROCESSING=2
where PROCESSING=(select MIN(convert(int, NOTE_ID)) from WAITING where PROCESSING=1)
if @@rowcount>0
select @id_select=1
select @id_checked=@id_select

return
houguojun 2001-03-01
  • 打赏
  • 举报
回复
from 字句不能有查询!
可以想象MS对你的伤害有多大!以后用T_SQL标准吧,我保证你再不会遇到这些鸟问题!

34,590

社区成员

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

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