ps4 重装机兵:关于SQL Server 2000 列自增问题

来源:百度文库 编辑:神马品牌网 时间:2024/04/28 09:02:11
整型数据类型是可以与Identity属性一起使用的唯一类型,请问如果我有一数据列是 nvarchar 类型,如何写存贮过程让其从1实现自增呢?谢谢
我的表中有一个 id 字段,它的类型是 nvarchar ,可是这种类型不能用 identity 属性,如何实现id字段从1自增呢?

--创建表
create table test001
(
id nvarchar(10),
content varchar(10)
)

go
--创建触发器
create trigger tg_test001
on test001
instead of insert
as

declare @content nvarchar(10)

select @content= content from inserted
insert into test001(id,content)
select cast(isnull(max(id),'0') as int)+1,@content
from test001

go

--向表中插入数据
insert into test001 (content) select 'a'
insert into test001 (content) select 'b'
go
--选择察看插入效果
select * from test001
go

按你说的情况,就我了解,好象只能用触发器来实现了。
下边的代码是一个例子,你主要是看看思路,执行以后可以见到效果
例子里的表test001中的id列就如你说的是nvarchar类型的

--创建表
create table test001
(
id nvarchar(10),
content varchar(10)
)

go
--创建触发器
create trigger tg_test001
on test001
instead of insert
as

declare @content nvarchar(10)

select @content= content from inserted
insert into test001(id,content)
select cast(isnull(max(id),'0') as int)+1,@content
from test001

go

--向表中插入数据
insert into test001 (content) select 'a'
insert into test001 (content) select 'b'
go
--选择察看插入效果
select * from test001
go

什么问题呢?