b26059 2016-03-20 09:34 采纳率: 0%
浏览 1367

db2使用用户自定义函数时报错

自定义函数如下:
create function a(@sno char(6))
returns table(couname char(20),score int )
language sql
reads sql data
no external action
deterministic
return
(select cname,score from grade,course where grade.sno=@sno and grade.cno=course.cno);

调用语句如下:select a('990101')
报错信息如下:
An unexpected token "END-OF-STATEMENT" was found following "select a('990101')". Expected tokens may include: "".. SQLCODE=-104, SQLSTATE=42601, DRIVER=4.7.89

函数已经成功创建了,我应该如何调用呢?

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-05 02:18
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    在SQL Server中,当您尝试将一个未定义的结束符(例如END-OF-STATEMENT)作为表达式的一部分时,可能会导致错误。这通常是因为您的查询语法不正确。

    要解决此问题,请确保在调用自定义函数时提供正确的参数。在你的例子中,你应该在select语句中添加@sno变量,并将其设置为'990101'。以下是修改后的调用语句:

    SELECT a('990101');
    

    这应该能够避免错误。

    评论

报告相同问题?