您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 吐鲁番分类信息网,免费分类信息发布

mssqlserver中最大ID冲突解决办法

2024/4/1 0:21:18发布6次查看
本文章介绍了关于mssqlserver中最大id冲突解决办法,有需要的朋友可以参考一下。
在一个特定的表中保存最大id,通过记录来取每次的唯一最大值。
 代码如下 复制代码
create table [dbo].[tbguidtable](
    [tablename] [varchar](50) not null,
    [keyname] [varchar](20) not null,
    [keyvalue] [varchar](100) not null
) on [primary]
go
if exists ( * from dbo.sysobjects where id = object_id(n'pcreateguid') and objectproperty(id, n'isprocedure') = 1)
drop procedure pcreateguid
go
------------------------------------
--用途:增加一条记录  个人信息
--项目名称:
--说明:
--时间:2011-7-4 15:34:12,2011-08-15
------------------------------------
create procedure pcreateguid
@tablename varchar(50),
@keyname varchar(100),
@guid varchar(100) out
as
if not exists(select * from tbguidtable where tablename=@tablename and keyname=@keyname)
insert into tbguidtable (tablename,keyname,keyvalue) values(@tablename,@keyname,10000)
update tbguidtable set keyvalue=keyvalue+1 where tablename=@tablename and keyname=@keyname
select  @guid=cast(keyvalue as varchar) from tbguidtable where tablename=@tablename and keyname=@keyname
go
---*****---
declare @tablename varchar(50)
declare @keyname varchar(100)
declare @guid varchar(100)
set @tablename='tb1'
set @keyname='def'
execute pcreateguid @tablename,@keyname,@guid out
print @guid
吐鲁番分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录