我看到教程谈论带语法和示例的序列。
但是当我尝试通过Squirrel在Syabse中创建序列时,我得到以下错误。
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>
答案 0 :(得分:1)
在身份上增加一点是:
截断表并插入数据后,将获取标识的旧值,然后递增。
示例:
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 :(得分:0)
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
结果
(受影响的一行)
(受影响的一行)
test_tab_id test_tab_name
1 Hello 2 World
(受影响的2行)
答案 2 :(得分:0)
我们可以为每个组合分配序列
E.g。 1 ABC
2 ABC
3 ABC
4 ABC
1 KLO
2 KLO
3 KLO