老叶观点:MySQL开发规范之我见 叶金荣 2015/07/23 0 大多数MySQL规范在网上也都能找得到相关的分享,在这里要分享的是老叶个人认为比较重要的,或者容易被忽视的,以及容易被混淆的一些地方。1、默认使用InnoDB引擎【老叶观点】已多次呼吁过了,InnoDB适用于几乎99%的MySQL应用场景,而且在MySQL 5.7的系统表都改成InnoDB了,还有什么理由
1、遇到的问题Mysql增主键达到最大值,会发生什么你知道吗?就在今天,我们线上就发生了这种问题!!!他会发生异常,报错如下:Duplicate entry '2147483647' for key 'PRIMARY' org.springframework.dao.DataIntegrityViolationException: could not execute statement; S
转载 2023-07-11 22:53:56
172阅读
1、多线程插入(单表)2、多线程插入(多表)3、预处理SQL4、多值插入SQL5、事务(N条提交一次)# 多线程插入(单表)问:为何对同一个表的插入多线程会比单线程快?同一时间对一个表的写操作不应该是独占的吗?答:在数据里做插入操作的时候,整体时间的分配是这样的:1、多链接耗时 (30%) 2、多发送query到服务器 (20%) 3、多解析query (20%) 4、多插入操作 (
以前项目主要是用是MySql,现在的项目切换到oracle,在项目组已经几个月了,感觉还是需要系统的学习整理下oracle,主要是整理学习plsql语句,买了本比较畅销的PL/SQL的书籍(oracle pl/sql 从入门到精通),通过对此书的阅读,根据此书的目录结构,对自己感觉需要的知识的做个整理数据库三范式,这个感觉是很多人都知道的,但是貌似在实际项目中我们经常又不会严格遵守的东西1NF:列
前言数据库中的ID 用完了该怎么办?这个问题可以分为有主键 & 无主键两种情况回答。有主键如果你的表有主键,并且把主键设置为增。在 MySQL 中,一般会把主键设置成 int 型。而 MySQL 中 int 型占用 4 个字节,作为有符号位的话范围就是 [-2^31, 2^31-1],也就是[-2147483648,2147483647];无符号位的话最大值就是 2^32-1,也就
转载 2024-02-28 14:59:16
1787阅读
# MyBatisPlus查询MySQL当前id最大值 ## 简介 MyBatisPlus是MyBatis的增强工具,它简化了和数据库的交互,并提供了许多便捷的查询和操作方法。在使用MyBatisPlus时,有时候我们需要查询MySQL表的当前id最大值,本文将介绍如何使用MyBatisPlus实现这个功能。 ## 准备工作 在开始之前,我们需要先安装好以下软件: - JDK
原创 2024-01-17 03:59:57
2257阅读
## MySQL最大值MySQL数据库中,增字段是一种非常常见的数据类型,用于自动生成唯一的递增数字标识。但是在使用增字段时,我们需要注意增字段的最大值限制,以免超出范围导致数据插入失败。本文将介绍MySQL增字段的最大值限制及如何处理这个问题。 ### 增字段的定义和用途 增字段是MySQL中的一种特殊类型,通常用于表示主键或唯一标识符。当插入一条新的记录时,增字段
原创 2024-05-03 05:02:08
428阅读
报错:create connection SQLException, url: jdbc:mysql://xx.xxx.x.xx:6306/hksk-cloud-mes?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=tr
回到目录4.1 A使用CREATE TABLE语句创建出一张空的Product表,并执行了如下语句向其插入数据。紧接着,B连接上该数据库,并执行了一条语句。这时B能得到怎样的查询结果? -- A执行的SQL语句 BEGIN TRANSACTION; INSERT INTO Product VALUES ('0001', 'T恤', '衣服', 1000, 500, '2009-09-20
这个问题其实可以分为有主键 & 无主键两种情况回答。国际惯例,先上张脑图:02 有主键 如果你的表有主键,并且把主键设置为增。在 MySQL 中,一般会把主键设置成 int 型。而 MySQL 中 int 型占用 4 个字节,作为有符号位的话范围就是 [-231,231-1],也就是[-2147483648,2147483647];无符号位的话最大值就是 2^32-1,也就是 42949
转载 2023-11-03 11:21:10
573阅读
MYSQL获取自增ID的四种方法  题外话:增字段在开发的过程中一般插入null或者0,此时MySQL会自动维护增字段,自动设置为比上次插入值更大的增字段必须为整型数据 @@identity 是表示的是最近一次向具有identity属性(即增列)的表插入数据时对应的增列的,是 系统定义的全局变量。一般系统定义的
alter table table_name auto_increment=n; 注意n只能大于已有的auto_increment的整数值,小于的无效. show table status like 'table_name' 可以看到auto_increment这一列是表现有的. 步进没法改变.只能通过下面提到last_inset_id()函数变通使用 Mysql可以使用AUTO_INCR
转载 2023-07-13 00:08:20
456阅读
# 如何实现MySQL增长ID插入指定 ## 介绍 在MySQL数据库中,增长ID是一种常用的字段类型,用于为每条记录分配唯一的标识符。然而,在某些情况下,我们可能需要将指定的插入到增长ID字段中。本文将教会你如何实现这一操作。 ## 实现步骤 为了实现MySQL增长ID插入指定,我们可以按照以下步骤进行操作: | 步骤 | 操作 | | ---- | ---- | | 1
原创 2023-12-14 03:36:22
154阅读
目录1.前置知识——事务2. 前置知识——触发器 3.前置知识——MySQL中符号@的作用 4. 回归正题,如何实现将id连续且自动增长1.前置知识——事务参考链接:具体事务知识,点击这里详细查看  事务隔离级别:读未提交读已提交可重复读串行化查看全局系统隔离级别select @@global.transaction_isolation; 查看当
1.记录的操作INSERT    插入记录1)方式一INSERT   [INTO]   tb_name   [(col_name,...)]   {VALUES | VALUE}   ({expr | DEFAULT},...),(...),...注:如果要为默认自动编号的赋值
来源起因是在沸点摸鱼的时候看到这个问题,觉得挺有意思的。虽然做开发也好几年了,但是从来没有想过这个问题,仔细想了想,好像也情有可原。以我们最常用到的mysql为例,它支持最大的整形是bigint,bigint在mysql中占8个字节,也就是说它的上限最大值是2^64,以这个数量级来说,早已经超出了mysql单机单表的处理能力。正常来说,当mysql的数据量达到千万级别,性能就会开始下降,需要开始着
转载 2023-08-11 19:05:45
1540阅读
# MySQLID最大值函数 在使用MySQL作为数据库管理系统时,我们经常会使用增长ID作为主键来唯一标识每一条记录。在某些情况下,我们可能需要获取当前表中ID最大值,以便进行一些操作。MySQL提供了几个函数可以帮助我们实现这个目的,其中最常用的是`MAX()`函数。 ## `MAX()`函数简介 `MAX()`函数是MySQL中用于获取某一列中最大值的函数。它可以用于数值类型和
原创 2023-11-02 07:02:18
110阅读
数据行(1)增insert into t1(name,gender,age) values('young','男',26),('peppa','女',28) insert into t1(name,gender,age) select name,gender,age from t2 指定字段名插入&不指定字段名插入: insert into 表名(字段名1[,字段名2,...]) valu
## 如何查询MySQL表中最大值ID 作为一名经验丰富的开发者,我很乐意教你如何查询MySQL表中最大值ID。下面是整个过程的流程图: ```mermaid flowchart TD A[连接到MySQL数据库] --> B[编写查询语句] B --> C[执行查询语句] C --> D[获取查询结果] D --> E[解析结果] E --> F[
原创 2023-10-10 08:10:52
339阅读
hibernate利用mysql增长id属性实现增长id和手动赋值id并存   我们知道在mysql中如果设置了表id增长属性的话,insert语句中如果对id赋值(没有被用到过)了,则插入的数据的id会为用户设置的,并且该表的id最大值会重新计算,以插入后表的id最大值增值起点  但是如果使用hibernate,也想实现这个mysql的特性的话,怎么做呢?  首先我们看下h
  • 1
  • 2
  • 3
  • 4
  • 5