(4.24)【mysql、sql server】分布式全局唯一ID生成方案
参考:分布式全局唯一ID生成方案:https://blog.csdn.net/linzhiqiang0316/article/details/80425437
分表生成唯一ID方案
sql server:
-- 构造中间表,SYS_USERS_GOODS_IDENTITY(itemId bigint identity(1,1),now_date datetime)
1.@@identity
2.SCOPE_IDENTITY()
3.(4.17)sql server中的uuid获取与使用
案例代码:
INSERT INTO SYS_USERS_GOODS_IDENTITY SELECT GETDATE() SELECT @ItemID=@@identity
当运行完插入语句后,执行select @@identity就可得到自动生成的id
如果是sql server 最好用:select SCOPE_IDENTITY() as id 因为@@identity全局的 同类还有IDENT_CURRENT(‘table’) IDENT_CURRENT('tab_name') 返回为任何会话和任何作用域中的特定表最后生成的标识值。IDENT_CURRENT 不受作用域和会话的限制,而受限于指定的表。 @@IDENTITY 返回为当前会话的所有作用域中的任何表最后生成的标识值。 SCOPE_IDENTITY() 返回为当前会话和当前作用域中的任何表最后生成的标识值 SCOPE_IDENTITY() 和 @@IDENTITY 返回在当前会话中的任何表内所生成的最后一个标识值。但是,SCOPE_IDENTITY 只返回插入到当前作用域中的值;@@IDENTITY 不受限于特定的作用域。
mysql:
1. select @@identity; 2. select last_insert_id(); 多人同时写的话,不会相互影响。LAST_INSERT_ID(); 是 connection 级的变量,各个不同连接相互之间不影响
其实不加事务也可以。
案例:
start transaction;
insert into login_log_tb(server_name) values ('服务器');
select LAST_INSERT_ID();
commit;
分类:
MSSQL dba管理
, mysql 基础
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
2018-05-21 关于uuid与自增列的选择