26MyCat - 自增长主键

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 26MyCat - 自增长主键

说明

  1. mysql本身对非自增长主键,使用last_insert_id()是不会返回结果的,只会返回0;
  2. mysql只会对定义自增长主键,可以last_insert_id()返回主键值;

MyCAT目前提供了自增长主键功能,但是如果对应的mysql节点上数据表,没有定义auto_increment,那么在MyCAT层调用last_insert_id()也是不会返回结果的。

正确配置方式如下

1)mysql定义自增长组件

CREATE TABLE table1
(‘id_’ INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
‘name_’ INT(10) UNSIGNED NOT NULL,
PRIMARY KEY (‘id_’)) ENGINE=MYISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

2)mycat定义主键自增

3)mycat对应sequence_db_conf.properties增加相应设置

TABLE1=dn1

4)在数据库中mycat_sequence表中增加TABLE1表的sequence记录

测试使用:

Myibatis中新增记录后获取last_insert_id的示例:

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
243
分享
相关文章
|
11月前
主键自增
主键自增。
62 4
在MySQL中, 自增主键和UUID作为主键有什么区别?
自增主键和UUID在MySQL中各有优缺点,选择哪种方式作为主键取决于具体的应用场景和需求。例如,在需要高性能插入和查询的场景下,自增主键可能更合适;而在需要保证主键全局唯一性和不可预测性的场景下,UUID可能更合适。
140 0
MySQL中, 自增主键和UUID作为主键有什么区别?
MySQL中, 自增主键和UUID作为主键有什么区别?
111 0
MySQL中列属性(主键、唯一键和自增等)使用实践
MySQL中列属性(主键、唯一键和自增等)使用实践
314 0
数据库主键一定要自增吗?有哪些场景不建议自增?
数据库主键一定要自增吗?有哪些场景不建议自增?
538 0
mysql ,如何将B表的字段f 作为A表的主键s的外键?
假设您已经有两个表A和B,且它们都已经有字段,其中A表的主键为s,B表中的字段为f。要将B表的字段f作为A表的主键s的外键,可以使用以下的 SQL 语句来实现:
109 0
使用jpa在postgresql数据库中创建主键自增表
jpa依赖 org.springframework.boot spring-boot-starter-data-jpa org.
3452 0
Navicat使自增主键归1
截断表:可以用于删除表中的所有数据。 截断表命令还会回收所有索引的分配页。
370 0
Navicat使自增主键归1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等