【问题标题】:SQL Server 2000 Error Creating FunctionSQL Server 2000 创建函数时出错
【发布时间】:2017-06-08 11:30:48
【问题描述】:

我无法在我的数据库中的 SQL Server 2000 中创建函数。所以,我尝试使用帮助中的示例(F1),但我遇到了同样的错误。

CREATE FUNCTION CubicVolume
    -- Input dimensions in centimeters
   (@CubeLength decimal(4,1), 
    @CubeWidth decimal(4,1),
    @CubeHeight decimal(4,1) 
   )
RETURNS decimal(12,3) -- Cubic Centimeters.
AS
BEGIN
    RETURN ( @CubeLength * @CubeWidth * @CubeHeight )
END

错误:

消息 170,第 15 级,状态 1,第 2 行第 2 行:
'FUNCTION' 附近的语法不正确。

消息 137,第 15 级,状态 1,第 9 行
必须声明变量“@CubeLength”。

我为 Database Northwind 运行了这个脚本,它没有问题,所以我不明白问题是什么。

【问题讨论】:

  • 一个主要问题是您正在使用的 SQL Server 方式 ooooooooold 版本。这已经超出了几年的支持 - HIGHEST 是时候升级了!
  • @marc_s “最高升级时间”是什么意思?
  • 我不能,我需要使用 SQL 2000。我不知道为什么我不能在我的数据库中使用这个脚本,但是在 Northwind 中可以成功。
  • 检查不工作的数据库的兼容性级别。我敢打赌它是在 UDF 发明之前。
  • 您能告诉我如何检查吗?

标签: sql-server sql-server-2000


【解决方案1】:

感谢您的回答。

问题已解决。

问题在于 Aaron Bertrand 所说的级别上的兼容性。

在数据库上单击右键-->属性-->选项-->兼容级别

(需要80或更高)

enter image description here

【讨论】:

    猜你喜欢
    • 2013-12-28
    • 2010-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-28
    • 1970-01-01
    • 2012-09-14
    • 2018-01-21
    相关资源
    最近更新 更多