Sequence 我们在Sybase中有序列吗
我看到教程用语法和示例讨论序列 但当我尝试通过Squirrel在Syabse中创建序列时,我得到以下错误Sequence 我们在Sybase中有序列吗,sequence,sybase,Sequence,Sybase,我看到教程用语法和示例讨论序列 但当我尝试通过Squirrel在Syabse中创建序列时,我得到以下错误 Error: 'SEQUENCE' is not a recognized CREATE option. SQLState: ZZZZZ ErrorCode: 155 那么我们如何在Sybase中创建自动递增唯一标识符呢 我们如何按顺序使用标识。为什么序列在一个Sybase版本中可用而在另一个版本中不可用 我使用下面的依赖项连接到sybase <dependency>
Error: 'SEQUENCE' is not a recognized CREATE option.
SQLState: ZZZZZ
ErrorCode: 155
那么我们如何在Sybase中创建自动递增唯一标识符呢
我们如何按顺序使用标识。为什么序列在一个Sybase版本中可用而在另一个版本中不可用
我使用下面的依赖项连接到sybase
<dependency>
<groupId>com.sybase.jdbcx</groupId>
<artifactId>jconn3</artifactId>
<version>6.0</version>
</dependency>
com.sybase.jdbcx
jconn3
6
Sybase ASE中不存在作为对象的序列(假设)。等效功能是使用标识列完成的
create table test_tab (
test_tab_id int identity,
test_tab_name varchar(30) not null )
go
insert into test_tab (test_tab_name) values ('Hello')
go
insert into test_tab (test_tab_name) values ('World')
go
select * from test_tab
go
结果
(1行受影响)
(1行受影响)
测试选项卡id测试选项卡名称
(受影响的2行)
附加标识的另一点是: 截断表并插入数据后,将获取标识的旧值,然后递增 例如:
select * from test_tab
go
2 rows
1 hello
2 world
Truncate the table test_tab
go
insert into test_tab (test_tab_name) values ('Hai')
go
insert into test_tab (test_tab_name) values ('done')
go
select * from test_tab
go
你将得到如下结果
3 hai
4 done
我们可以为每个组合分配序列吗 例如。 1 ABC
2 ABC
3 ABC
4 ABC
1 KLO
2 KLO
3 KLO
Sybase是一家公司,不是数据库。您需要指定所指的产品。您链接到的文档是针对Sybase IQ的,这就是您正在使用的吗?@Michael:我已经用我在应用程序中使用的jar进行了编辑。我使用SQuirreL SQL客户端进行连接。如何获取最新的标识值?就像我们在sql中用currval()表示序列一样。
2 ABC
3 ABC
4 ABC
1 KLO
2 KLO
3 KLO