MySQL 使用用 insert 插入数据时,为了不重复插入,往往先查询一下数据,若不存在才进行插入操作。当数据库中存量数据较多时,或者是在批量插入操作时,很容易出现插入重复数据的问题。解决方法:在 MySQL 中,当存在主键冲突或唯一键冲突的情况下,根据插入策略不同,有以下三种避免方法:insert ignore into:若没有则插入,若存在则忽略replace into:若没有则正常插入,若存在则先删除后插入insert into ... on duplicate key update:若没有则正常插入,若存在则更新注意,使用以上方法,需要表中有一个 PRIMARY KEY 或 UNIQ
像素鱼丸 2022-09-17 MySQL 1364
MySQL连接池,通过将大量短连接转化为少量的长连接,从而提高整个系统的吞吐率。一般 ORM 都会对连接池进行封装,只提供简洁的接口供上层使用。在上层看来,并不知道底层是否使用了连接池(甚至连访问数据库的IP和Port都不知道),只知道调用了一个接口,执行了指定的SQL语句,并返回执行状态和执行结果。在使用 conn = pool.getConnection() 获取一个链接,然后执行事务的过程中,执行了一次 pool.execute(sql),程序就甭了,原因是 pool.execute(),会自动获取连接池中的链接,执行完 sql 以后,就会立即释放。在 conn.release() 之前
像素鱼丸 2022-09-16 MySQL Node.js 974
### 一、外键、外键作用及其限制条件1.外键的定义:外键是某个表中的一列,它包含在另一个表的主键中。外键也是索引的一种,是通过一张表中的一列指向另一张表中的主键,来对两张表进行关联。一张表可以有一个外键,也可以存在多个外键,与多张表进行关联。2.外键的作用:外键的主要作用是保证数据的一致性和完整性,并且减少数据冗余。主要体现在以下两个方面:阻止执行:从表插入新行,其外键值不是主表的主键值便阻止插入。从表修改外键值,新值不是主表的主键值便阻止修改。主表删除行,其主键值在从表里存在便阻止删除(要想删除,必须先删除从表的相关行)。主表修改主键值,旧值在从表里存在便阻止修改(要想修改,必须先删除从表
像素鱼丸 2022-09-15 MySQL 945
### 安装 MySQLDebian 11 系统中默认使用了MariaDB,在APT的软件源中并没有mysql。所以,Debian 11 如果要安装mysql,需要下载安装Mysql APT Repository,更新APT Repository 后再使用 apt-get 安装。### 设置软件源查看 https://dev.mysql.com/downloads/ 找到 apt 源,mysql-apt-config_0.8.22-1_all.deb 的下载地址。wget https://dev.mysql.com/get/mysql-apt-config_0.8.22-1_all.deb a
像素鱼丸 2022-08-23 MySQL 运维 1991
DATE_FORMAT(date, format)DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。format 参数的格式有:%a Everyday name in Shortened form [Sun–Sat]. %b Month name in Shortened form [Jan – Dec]. %c Name of Month in numbers [0 – 12]. %D Daytime of the month in a numeric form, trailed by suffix [like 1st, 2nd, …]. %d Daytime of the
像素鱼丸 2022-07-23 MySQL 1402
between...and(推荐)SELECT * FROM tb_code WHERE expired_at BETWEEN '2021-01-01 00:00:00' AND '2021-12-31 23:59:59'; 大小于号SELECT * FROM tb_code WHERE expired_at '2021-01-01 00:00:00' AND expired_at '2021-12-31 23:59:59'; 转换为比较,create_time若加了索引,不走索引SELECT * FROM k_student WHERE UNIX_TIMESTAMP(create_t
像素鱼丸 2022-07-11 MySQL 1073
ReferenceError: __dirname is not defined in ES module scopeThis file is being treated as an ES module because it has a '.js' file extension and '/Users/ice/www/next/package.json' contains "type": "module". To treat it as a CommonJS script, rename it to use the '.cjs' file extension.解决办法:import path
像素鱼丸 2022-07-02 Node.js 1310
1 用utf8格式, 需要 双引号“”替换为单引号,而且采用url encode编码,例如# 替换为 %23,background-image: url('data:image/svg+xml;utf8, svg t="1656040038219" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3009" width="200" height="200" path d="M512 234.666667c131.946667 ...67 77.482667
像素鱼丸 2022-06-24 CSS 编程开发 1583
1 console.log在console.log()中,可以用%s设置字符串,%i设置数字,%c设置自定义样式,console.log()接受的两个参数,前者是描述性的语言,而第二个参数是与第一个参数位置对应的字符console.log(' %c %s %s %s', 'color: yellow; background-color: black;', '–', '测试信息', '–');2 console.table()很多的时候,你可能会有一堆对象需要查看。可以用console.log把每一个对象都输出出来,也可以用console.table语句直接把所有的对象都直接输出成为一个表格3
方法一:挂载在原型链上import { createApp } from 'vue' import App from './App.vue' import router from './router' import Axios from 'axios'; const golBalTest = () = { console.log('测试全局挂载'); return '测试全局挂载'; } const app = createApp(App) // 挂载到vue原型上(方法1) app.config.globalProperties.$axios = Axios; app.con
像素鱼丸 2022-06-23 JavaScript 1422
方法一,await conn.query(`START TRANSACTION`); await conn.execute(`INSERT INTO user VALUES (?, ?, ?, ?, ?, ?)`, [...userDetails]); await conn.execute(`INSERT INTO account VALUES (?, ?, ?, ?, ?, ?)`, [...accountDetails]); await conn.query(`COMMIT`); START TRANSACTION 和 COMMIT 不可以使用 conn.execute,MySQL lim
像素鱼丸 2022-06-15 MySQL Node.js 1499
FFmpeg 修改默认音轨:ffmpeg -i 西游2:伏妖篇.国粤双语.mkv -map 0:0 -map 0:2 -c copy -disposition:a:0 default -y output.mp4 ffmpeg -i gf.mkv -map 0:0 -map 0:2 -vcodec copy -acodec copy out.mkv 注: -map指定哪些流做为输入, 0:0 表示第0个输入文件的第0个流使用ffmpeg修改默认的音频轨道ffmpeg -i input.mkv -map 0:0 -map 0:1 -map 0:2 -c copy -disposition:a:0
像素鱼丸 2022-05-01 编程开发 2200
随机推荐
WordPress 添加定时任务
JavaScript 使用 html2canvas 生成图片
CSS 边框与边距
Wordpress 使用 tag 标签获取文章列表的方法
HTML select 下拉列表
wp_signon() 自定义用户登录函数
WP_Query 函数参数
JavaScript Map 详解