Tsql SQL中的IDENTITY()函数

Tsql SQL中的IDENTITY()函数,tsql,sybase,Tsql,Sybase,我看到一个SP,其中identity函数的调用方式如下: select id = identity(10) ..... into ..... from ...... 如果我只能传递1或2个参数,而不是三个参数(种子、增量、数据类型),请任何人告诉我 此外,如果表中的一列已定义为标识,这不意味着它将自动生成唯一的序列号吗?那么这个identity()函数到底需要什么呢?identity()不是唯一的标识符。这只是意味着它会自动计数。主键约束将使列唯一,以便识别行,Sybase 12.0.1文档中

我看到一个SP,其中identity函数的调用方式如下:

select id = identity(10) ..... into ..... from ......
如果我只能传递1或2个参数,而不是三个参数(种子、增量、数据类型),请任何人告诉我


此外,如果表中的一列已定义为标识,这不意味着它将自动生成唯一的序列号吗?那么这个identity()函数到底需要什么呢?

identity()不是唯一的标识符。这只是意味着它会自动计数。主键约束将使列唯一,以便识别行,Sybase 12.0.1文档中说:

识别功能[杂项]

为数据集中的每个连续行生成从1开始的整数值 查询它的实现与数字函数的实现相同

语法

标识(表达式)参数

•表达一种表达。表达式已解析,但被忽略 在函数执行期间

返回

INT

评论

标识函数的描述与 数字函数的说明

另见

•数字功能[杂项]

标准和兼容性

•SQL/2008供应商扩展

范例

下面的语句返回一个按顺序编号的 雇员

从员工中选择身份(10)、姓氏

与MS SQL Server不同,Sybase只处理一个参数。种子和增量始终为1


如果选择的数据中有任何标识列,则会复制它们的值。
IDENTITY
函数允许您在输出表中创建一个新的IDENTITY列。

Ok。但是我共享的查询中,identity()函数只传递了一个参数。那我怎么知道是种子被传递了还是增量被传递了呢。即使它是这两个中的一个,另一个还没有通过的会怎么样?它有什么价值?