찾다
데이터 베이스MySQL 튜토리얼自增序列产生器的实现思路_MySQL

bitsCN.com
自增序列产生器的实现思路 l   需求u  实现MySQL自带的字段值自动增长等效的功能;u  同一应用集群中数据库表的自增类型字段值具有全局唯一性;u  支持数据库级别的水平拆分表,同时还需要支持数据库内部的水平拆分表,其ID值都来源于同一条配置记录;    l   存储设计序列产生器配置表increment_config结构:列名称 数据类型 是否为空 默认值 是否自增 主键/索引 备注ID INT UNSIGNED N AUTO_INCREMENT PRIMARY KEY(ID) 唯一标示,无意义TABLE_NAME VARCHAR(40) N UNIQUE INDEX 表名称TABLE_TOTAL TINYINT UNSIGNED N 0 标记数据库内分表的数量COLUMN_NAME VARCHAR(40) N 字段名称START_VALUE BIGINT UNSIGNED N 1 开始值OFFSET_VALUE SMALLINT UNSIGNED N 10000 增长的步长FLAG TINYINT N 0 0–正常;1–作废值GMT_MODIFIED TIMESTAMP N 数据库自动更新此值
 备注:1>. GMT_MODIFIED不由程序或人为主动去负责更新与填写,而是通过数据库的特性自动填写与更新;2>. 对于数据库内部的水平分表,即TABLE_TOTAL0,则通过TABLE_NAME+TABLE_TOTAL组合区分;l   对存储表的操作    u  初始化的 SQL对于需要用到序列产生器的表,则在此配置表中增加一条记录,例如:INSERT INTO(TABLE_NAME,TABLE_TOTAL,COLUMN_NAME,START_VALUE,OFFSET_VALUE,FLAG)VALUES(‘msg_’,23, ’MSG_ID’,1,10000,0);u  序列生成器操作的 SQL程序每次获得序列区间段,以及更新相关数据值操作的事务的过程SQL,假设msg_系列表对应的记录,在配置表中ID=1。START  TRNSACTION;SELECT  ID, TABLE_NAME,COLUMN_NAME,START_VALUE,START_VALUE+OFFSET_VALUE AS END_VALUEFROM  increment_config  WHERE ID=1 FOR UPDATE;UPDATE  increment_config  SET  START_VALUE=START_VALUE+OFFSET_VALUE WHERE  ID=1;COMMIT;l   程序实现建议u  为提供序列产生的速度,而提高业务处理的性能。程序需要以拿序列区间的方式实现,而不是每次需要的时候,都要去数据库获得序列号值;u  程序在每次启动的时候,要初始化配置表中所有有效记录的序列区间值;u  当程序拿到的区间值START_VALUE,经过一段时间使用后达到:START_VALUE=END_VALUE,处理步骤如下:    1>. 挂起当前的序列调用请求;2>. 做序列区间值获取的事务;3>. 把新获得区间值的START_VALUE,给予挂起的调用请求;总结:每个区间值的最大值(END_VALUE)始终作为当前期间的弃用值。   作者 snoopy7713 bitsCN.com

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
win7数字键盘u变成4如何解决win7数字键盘u变成4如何解决Jul 14, 2023 am 08:49 AM

当一些Win7笔记本电脑客户使用数字键盘时,他们会遇到打字u但变为4的原因。发生什么事?事实上,这是因为你的笔记本电脑将键盘集成到字母键中。你只需关闭键盘就可以解决这个问题。具体步骤如下:FN+nunlock键转换可以正常输入英语字母。如果客户遇到按I变为5,也可以使用此方法。如何解决win7数字键盘u变成4:1.为了更好的方便,笔记本电脑没有小键盘区域。因此,有一些键可以界定数字键盘的功能。可以使用FN+nunlock键进行转换。有些必须用shift+numlock输入英语或数据。2.小键盘-

仰望U9:中国电动超级跑车的新宠仰望U9:中国电动超级跑车的新宠Oct 13, 2023 pm 03:37 PM

在汽车电气化时代的推动下,中国国产汽车制造商积极参与了电动超跑的生产。最近,广汽埃安旗下的高端电动品牌昊铂推出了一款名为SSR的电动超跑,而此前,比亚迪的仰望U9也受到了广泛关注近日,有一段视频在网络上流传,据称是仰望U9的测试视频。视频中,一辆仰望U9在赛道上飞速行驶,令人惊讶的是,车辆的制动盘闪烁着明亮的橙色光芒,看起来就像是在进行勒芒24小时耐力赛一样。尤其引人瞩目的是前轮制动盘的亮度至少是后轮的两倍。然而,从视频中无法确定这一闪烁光亮是刹车盘在制动时产生的火光,还是车辆配备的灯光效果。尽

虚拟货币是什么货币?在哪里购买?虚拟货币是什么货币?在哪里购买?Mar 04, 2025 pm 05:42 PM

文章介绍虚拟货币是依赖密码学、通过点对点网络交易的数字或虚拟货币形式,列举比特币等常见币种。说明通常可在加密货币交易所如 Coinbase 等购买,各交易所有优劣。着重强调购买虚拟货币风险高,价格波动大且易遭诈骗、黑客攻击,提醒投资前充分研究,只投能承受损失的资金,信息仅供参考,非投资建议。

okx交易平台手续费一览okx交易平台手续费一览Feb 15, 2025 pm 03:09 PM

OKX 交易平台提供了各种类型的费率,包括交易费用、提款费用和融资费用。对于现货交易,交易费用根据交易量和 VIP 等级而有所不同,采取“做市商模式”,即市场每笔交易收取较低的手续费。此外,OKX 还提供了多种类型的期货合约,包括币本位合约、USDT 合约和交割合约,每种合约的费用结构也有所不同。

如何安装用友U8Win10:简易教程如何安装用友U8Win10:简易教程Jan 09, 2024 pm 02:01 PM

我们在使用win10操作系统的时候,有的小伙伴因为工作需要要在电脑上用友u8但是不知道怎么操作,对于这个问题小编觉得我们可以在网上先下载用友u8,然后通过在电脑的属性中进行相应的设置,比如计算机名称的更改、注册表的修改等等即可。具体详细步骤就来看下小编是怎么做的吧~用友u8win10安装教程步骤一:1、在“此电脑”图标,选择“属性”;2、在计算机名、域和工作组设置下点击更改设置按钮:3、在“计算机名”页签点击,在计算机名称匡总输入需要修改的名称(8位以内的英文字母,不包含标点符号特殊符号);4、

数据库视图和表怎么区分数据库视图和表怎么区分Aug 22, 2023 am 11:27 AM

数据库视图和表是数据库中的两个不同的概念,有着不同的特点和用途,表是数据库中真正存储数据的实体,而视图是从一个或多个表中导出的虚拟表,用于以特定的方式呈现和操作数据。表具有更高的数据持久性,而视图则提供了更灵活和便捷的数据访问方式。

如何使用PHP创建和管理数据库表如何使用PHP创建和管理数据库表Sep 09, 2023 pm 04:48 PM

如何使用PHP创建和管理数据库表随着互联网的迅猛发展,数据库成为了各种网站和应用程序不可或缺的组成部分。在PHP中,我们可以利用数据库管理系统(DBMS)如MySQL来创建和管理数据库表。本文将教你如何使用PHP来实现这一功能,并附上相应的代码示例。连接数据库首先,我们需要在PHP中连接到数据库。可以使用PHP提供的mysqli扩展或者PDO来实现这一功能。

数据库视图和表有哪些区别数据库视图和表有哪些区别Sep 04, 2023 pm 03:13 PM

数据库视图和表的区别有:1、表是数据库中用于存储数据的物理结构,而视图只是基于表或多个表的查询结果集;2、表是数据的物理存储单元,视图只是提供了查看和操作表数据的规则;3、视图为数据库提供高级的安全机制,表没有安全机制;4、视图是表的抽象;5、视图可查询中组合多个表,表只能查询单个表;6、表是数据库中的永久性结构,视图不是;7、视图可创建相同名称的视图,表不能创建同名表等等。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경