首页 MsSql sqlserver数据库最大Id冲突问题解决方法之一

sqlserver数据库最大Id冲突问题解决方法之一

在一个特定的表中保存最大Id,通过记录来取每次的唯一最大值

<div class=”codetitle”><a style=”CURSOR: pointer” data=”18536″ class=”copybut” id=”copybut18536″ onclick=”doCopy(‘code18536’)”> 代码如下:<div class=”codebody” id=”code18536″>
CREATE TABLE [dbo].[TbGuidTable](
[TableName] varchar NOT NULL,
[KeyName] varchar NOT NULL,
[KeyValue] varchar NOT NULL
) ON [PRIMARY] GO if exists (select 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,@guid out
print @guid

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/shujuku/mssql/20201114/12012.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

返回顶部