mysql 去掉字段空格 tab 换行键 回车键

发布时间:2021-10-15 10:08:19   分类:MySQL

msyql有去掉两边trim,左侧ltrim,右侧rtrim的函数可以直接用update 表名 set 字段名=ltrim(字段名)有时候不顶事可以用下面解决,去掉空格update `sptcs_warrior` set `ID_number`=replace(`ID_number`,'','')如果excel导表不小心产生了空格update `表名` set 字段名= replace(replace(replace(字段名,char(9),''),char(10),''),char(13)

mysql 常见错误之: SQL Error: 1366: Incorrect string value: \xE8\xAF\xA6\xE7\xBB\x86: for column

发布时间:2021-06-28 15:57:50   分类:MySQL

当遇到无法往数据库插入中文的时候,常常伴随出现SQL Error: 1366: Incorrect string value: \xE8\xAF\xA6\xE7\xBB\x86: for column这类的错误报告一般是字符串编码问题,建议修改为utf-8

mysql-innodb锁类型

发布时间:2021-04-09 14:58:51   分类:MySQL

数据库锁定机制就是为了保证数据的一致性,使得各种共享资源在被并发访问时变得有序。mysql支持三种级别的锁定机制:表级锁定(table-level),行级锁定(row-level),页级锁定(page-level)。1.表级锁定(table-level)表级锁是mysql中锁粒度最大的锁定机制,一次会将整张表锁定,不会出现死锁问题2.行级锁定(row-level)行级锁是锁粒度最小的锁定机制。由于锁粒度最小,所以锁定资源发生的争用也就最小,这样提高了应用程序并发处理的能力同时提高了整个系统的性能,但是每次获取锁和释放锁都要做很多事情,带来的消耗也就增加,也最容易发生死锁。3.页级锁定(page-level)页级锁定的特点是锁定颗粒度介于行级锁定与表级锁

MySql 将一个表的字段值更新到另一张表

发布时间:2020-10-14 18:01:44   分类:MySQL

此处语法为两个不同结构的表中用一张表的字段填充到另一张表某些字段中sql语句update table1 a1,table2 a2  set a1.要填充字段=a2.对应索取字段where a1.id=a2.id#必须保证有对应字段写在where之后  可以正常添加筛选条件

MySQL Explain详解

发布时间:2020-05-19 10:05:57   分类:MySQL

在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL的基于开销的优化器,还可以获得很多可能被优化器考虑到的访问策略的细节,以及当运行SQL语句时哪种策略预计会被优化器采用。-- 实际SQL,查找用户名为Jefabc的员工select * from emp where name = 'Jefabc';-- 

如何建立mysql索引,mysql索引的利与弊,建立mysql索引时需要注意的地方

发布时间:2020-05-19 09:22:10   分类:MySQL

在关系数据库中,索引是对表中一列或多列的值进行排序的一种存储结构,它是表中一列或多列的值的集合,而且其中包含了对应表中记录的引用指针。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。要注意的是,索引也是表的组成部分,建立太多的索引将会影响更新和插入的速度,因为它需要同样更新每个索引文件。对于一个经常需要更新和插入的表格,就没有必要为一个很少使用的where字句单独建立索引了,对于比较小的表,排序的开销不会很大,也没有必要建立索引。举个例子:首先,先假设有一张表,表有10W个记录,其中有一条记录我们已知a='1',如果想要拿到对应记录的话,需要的sql语句是 SELECT * FROM xxx WHERE a='

解决 MySQL 分页数据错乱重复

发布时间:2018-07-13 15:59:07   分类:MySQL

前言一天,小明很着急地在通讯工具上说:这边线上出现了个奇怪的问题,麻烦 DBA 大大鉴定下,执行语句 select xx from table_name wheere xxx order by 字段A limit offset;,表数据总共 48 条,分页数量正常,但出现了结果混杂的情况,第一页的数据出现在了第二页上;如果 order by 字段B 就不会出现这个现象,怎么会这样呢!其实,这个问题很简单,如果你有仔细阅读官档的话。~^_^~我们先来看看官档是怎么说的:If multiple rows have identical values in the ORDER BY columns, the server is f

MySQL 数据备份与还原

发布时间:2017-12-22 11:37:16   分类:MySQL

一、数据备份  1、使用mysqldump命令备份  mysqldump命令将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。  mysqldump命令的工作原理很简单。它先查出需要备份的表的结构,再在文本文件中生成一个CREATE语句。然后,将表中的所有记录转换成一条INSERT语句。然后通过这些语句,就能够创建表并插入数据。  1、备份一个数据库  mysqldump基本语法:  mysqldump -u username -p dbname table1 table2 ...-> BackupName.sql  其中:dbname参数表示数据库的名称;table1和table2参数表示需要备份的表的名称,为空

MySQL 自动备份 Shell 脚本

发布时间:2017-08-02 15:20:16   分类:MySQL

可以选择设置需要备份的库,自动备份压缩,自动删除 7 天前的备份,需要使用 crontab 定时执行。#!/bin/bash # 要备份的数据库名,多个数据库用空格分开 databases=(db1 db2 db3) # 备份文件要保存的目录 basepath='/root/backup/mysql/' if [ ! -d "$basepath" ]; then mkdir -p "$basepath" fi # 循环databases数组 for db in ${databases[*]} do # 备份数据库生成SQL文件 /bin/nice -n 19 /

Mysql中MyISAM引擎和InnoDB引擎的比较

发布时间:2017-06-19 10:10:55   分类:MySQL

结论如果不清楚自己应该用什么引擎,那么请选择InnoDB,Mysql5.5+的版本默认引擎都是InnoDB,早期的Mysql版本默认的引擎是MyISAM MyISAM 和 InnoDB的适用场景MyISAM适合:(1)做很多count 的计算;(2)插入不频繁,查询非常频繁;(3)没有事务。InnoDB适合:(1)可靠性要求比较高,或者要求事务;(2)表更新和查询都相当的频繁,并且表锁定的机会比较大的情况。 MyISAM 和 InnoDB的区别1)MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持2)mysiam表不支持外键3)在执行数据库写入的操作(insert,update,delete)的时候,mysiam表会锁