迁移数据到备份表
发表于|更新于
|浏览量:
对孩子的责任感是一切美德的基础。——西塞罗
昨晚写了个sql执行了一会儿去睡觉了,第二天发现还在执行

然后停止了下来,换另一种方式,将不需要删除的数据迁移到备份表,然后删除原表,再重命名回去
1 | CREATE TABLE mx_product_detail_bak LIKE mx_product_detail; |
相关推荐
2021-01-02
mysql对表的操作
如果工作对于人类不是人生强索的代价,而是目的,人类将是多么幸福。—— 罗丹 转,原文 mysql对表的操作 表的概念表是包含数据库中所有数据的数据库对象。表中的数据库对象包含列、索引、触发器。其中触发器是指用户定义的事务命令集合,当对一个表中的数据进行插入、更新或者删除时,这组命令就会自动执行,可以确保数据的安全性和完整性。 创建表create table tableName(属性名 字段类型,属性名 字段类型,……属性名 字段类型);最后一个字段类型后面没有逗号,整个语句的小括号后边有分号。 例如:创建一个数据库,并且创建一张表:create database 数据库名;show databases; //查看当前用户下mysql中所有的数据库use 数据库名; //使用这个数据库create table class(id Integer primary key auto_increment,name varvhar(32),number int);//创建了一张有三列的表,表名为class。id 为整型,主键且...
2022-02-10
mysql数据库信息函数
我将仇恨写在冰上,然后期待太阳的升起。——加西亚马尔克斯 打开mysql官方文档:Information Functions 可以看到mysql查询库表信息的函数 Name Description BENCHMARK() Repeatedly execute an expression CHARSET() Return the character set of the argument COERCIBILITY() Return the collation coercibility value of the string argument COLLATION() Return the collation of the string argument CONNECTION_ID() Return the connection ID (thread ID) for the connection CURRENT_ROLE() Return the current active roles CURRENT_USER(), CURRENT_USER...
2020-06-19
mysql使用druid时自动断开连接解决方案
今天接手了一个上了年龄的项目,用的是smm,数据库连接池用的druid,数据库版本较老,是5.0的mysql,我升级成mysql8.0后,一开始还没问题,然后大概每次无连接2分钟后数据库自动断开。。。 前端妹子立马跟我说接口报错了,我咯噔心里一慌,让前端妹子给我截一下报错信息(后台日志刷的太多,当时没注意到)。然后前端妹子说,哦又好了,我当时意识到不对劲,但也没有深究,直到这样的问题出了几次,每次一刷新又好了,我开始意识到问题的严重性。 一开始我复制了报错信息,也就是这一段 123Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failureThe last packet successfully received from the server was 8848 milliseconds ago. The last packet sent successfully to the server was 8848 milliseconds ago. 搜了半天,网上...
2022-02-06
INSERT ... ON DUPLICATE KEY UPDATE Statement
打开mysql文档,总会有新发现。——碧安瑶 我们在使用INSERT语句时,有时会有这样的需求,不存在就新增,存在就更新 此时我们可以使用INSERT ... ON DUPLICATE KEY UPDATE语句 就像mysql官方文档中提到的那样,我们如果将a列设为UNIQUE唯一索引或者主键时,并且当前表已经存在了a=1的数据,对于这种情况,下面两条sql的结果是相等的 当然如果不满足上方条件,则会新增一条数据 1234INSERT INTO t1 (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c=c+1;UPDATE t1 SET c=c+1 WHERE a=1; 对于InnoDB引擎的表,此处的新增可能会触发自增列,但修改操作不会触发 如果上方的唯一索引再加一个b列,则上方第一条sql和下方sql结果相等 1UPDATE t1 SET c=c+1 WHERE a=1 OR b=2 LIMIT 1; 注意如果此处a=1 or b=2匹配多行,则只会更新一行,所以我们需要避免在有多个唯一索引的表上使用本语法 我们在表内没...
2023-06-28
解决不能在mysql唯一索引使用函数问题
我们在伤害别人之前,要想到别人也会同样伤害我们。——达·芬奇 遇到不能在mysql唯一索引使用函数问题 可以使用虚拟列,例如下面的例子 1234# 添加虚拟列,为`date`字段格式化为月计算出来得到`month`字段ALTER TABLE `my_table` ADD COLUMN `month` VARCHAR(7) AS (DATE_FORMAT(`date`, '%Y-%m')) VIRTUAL;# 添加唯一索引到`month`和其他字段,组成联合唯一索引ALTER TABLE `my_table` ADD UNIQUE INDEX uk_date (`month`, `gmt_deleted`);
2022-09-17
COALESCE
沉默是最好的蔑视——康格里夫 分享一个关键字COALESCE获取第一个非空数据,表结构如下 执行sql: 1SELECT COALESCE(username,password) FROM `user_detail`

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog