sqlserver数据库最大Id冲突问题解决方法之一
时间:2021-07-01 10:21:17
帮助过:59人阅读
代码如下:
CREATE TABLE [dbo].[TbGuidTable](
[TableName] [varchar](50) NOT NULL,
[KeyName] [varchar](20) NOT NULL,
[KeyValue] [varchar](100) 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,@keyname,@guid out
print @guid
您可能感兴趣的文章:
- MySQL 大数据量快速插入方法和语句优化分享
- SQL2005 大数据量检索的分页
- SQLSERVER启动不起来(错误9003)的解决方法分享
- win2008 r2 安装sqlserver 2000问题的解决方法
- SQLSERVER数据库中的5173错误解决方法
- Win2008中SqlServer2008 无法打开错误日志文件导致无法启动的解决方法
- SqlServer表死锁的解决方法分享
- 还原sqlserver2008 媒体的簇的结构不正确的解决方法
- 针对Sqlserver大数据量插入速度慢或丢失数据的解决方法