我使用SQL Server而且我需要将唯一标识符传递给我的客户端。为了避免使用UUID,我想使用序列。为了做到这一点,我看了MS文档并找到了这个example。
USE MyDB;
GO
CREATE SCHEMA Test;
GO
CREATE SEQUENCE Test.CountBy1
START WITH 1
INCREMENT BY 1 ;
GO
SELECT NEXT VALUE FOR Test.CountBy1 AS FirstUse;
SELECT NEXT VALUE FOR Test.CountBy1 AS SecondUse;
哪个失败了。我目前在我的应用程序中使用其他服务的序列 - 但它们被用作默认值。这里的语法不同,因为我想选择序列作为整数并将其传递给我的Java服务器,并从那里通过REST传递给Web客户端。
该示例是从Microsofts docs中复制的。仅调整了数据库名称。该页面的示例B正在运行。
mssql-server mssql-tools
正在Ubuntu 16.04主机上运行。
错误讯息:
[2017-07-11 16:38:24] [S00016] [217]超出最大存储过程,功能,触发器或视图嵌套级别(限制2)。
[2017-07-11 16:38:24]连接已关闭。