Wesley13 Wesley13
3年前
MySQL使用on duplicate key update时导致主键不连续自增
使用onduplicatekeyupdate语法有时是很方便,但是会有一个影响:默认情况下,每次更新都会更新该表的自增主键ID,如果更新频率很快,会导致主键ID自增的很快,过段时间就超过数字类型的的范围了解决这个问题,有两种方式:(实际我目前使用的方式是把自增主键ID设置为bigint,也有一部分操作先查询再选择插入OR更新)方法一:拆分成两个
Stella981 Stella981
3年前
Hive中使用row_number() over()创建自增主键
虽然hive中的表没有主键一说,但是实际数据开发中经常需要将hive中计算好的表导出到mysql库中供业务使用或开发调用,而mysql表是需要有主键的,在hive中我们可以使用row\_number()over()窗口函数来生成一个自增序列的字段,在将表导出到mysql库中的时候就可以指定该字段为主键,使用起来还是挺方便的。select
Wesley13 Wesley13
3年前
mysql 转 oracle
1.oracle批量插入<insertid"save"insertintot_ac_user_role(userroleid,<!主键roleid,userid)
Stella981 Stella981
3年前
MongoDB ObjectId详解及使用
MongoDB中我们经常会接触到一个自动生成的字段:”\_id”,类型为ObjectId。本文详解ObjectId的构成和使用。ObjectId构成之前我们使用MySQL等关系型数据库时,主键都是设置成自增的。但在分布式环境下,这种方法就不可行了,会产生冲突。为此,MongoDB采用了一个称之为ObjectId的类型来做主
Wesley13 Wesley13
3年前
MySQL ORDER BY主键id加LIMIT限制走错索引
背景及现象report\_product\_sales\_data表数据量2800万;经测试,在当前数据量情况下,orderby主键id,limit最大到49的时候可以用到索引report\_product\_sales\_data\_hq\_code\_orgz\_id\_index,大于49时就走PRIMARY主键索引。
Wesley13 Wesley13
3年前
MySQL中快速找出无显式主键的表
大家好,我是知数堂SQL优化班老师网名:骑龟的兔子版本 :Serverversion:8.0.22MySQLCommunityServerGPL目标:想要查找没有显示主键的表第一步:查询所有用户表SELECT第二步 : 查找所有包含显示主键的表第三
Stella981 Stella981
3年前
C#版ObjectId
我希望有一个简单的方法实现分布式,解决HIS的数据库压力大的情况。而最需要有类似GUID的形式生成主键。但我拿不准纯数字ID段还是GUID一类的文本ID。最终在mongodb的obejctId的方案中得到启发,决定应用类似方案。很高兴找到以下文章https://www.cnblogs.com/gaochundong/archive/2013/04/
Wesley13 Wesley13
3年前
oracle之主键自动递增问题
//建表\\\\\\\\\\\\\\createtable表名( idnumbernotnullPRIMARYkey, usernameVARCHAR2(16)notnull, passwordVARCHAR2(50)notnull, realnameV
Wesley13 Wesley13
3年前
mysql约束与索引的区别
一:约束作用:是为了保证数据的完整性而实现的一套机制,它具体的根据各个不同的数据库的实现而有不同的工具(约束);这里主要讲解mysql的约束:1、非空约束:notnull;指示某列不能存储NULL值2、唯一约束:unique();uk unique约束的字段,要求必须是唯一的,但null除外;3、主键约束:
小万哥 小万哥
1年前
SQL FOREIGN KEY 约束- 保障表之间关系完整性的关键规则
SQLFOREIGNKEY约束SQLFOREIGNKEY约束用于防止破坏表之间关系的操作。FOREIGNKEY是一张表中的字段(或字段集合),它引用另一张表中的主键。具有外键的表称为子表,具有主键的表称为被引用表或父表。以下是两个表的例子:Persons表