数据库
太阳晒屁股了
System.out.println("hello world");
展开
-
Mysql中utf8mb4编码及排序规则之utf8mb4_bin, utf8mb4_general_ci, utf8mb4_unicode_cli三者区别
前言:utf8mb4说明UTF-8是使用1~4个字节,一种变长的编码格式,字符编码。mb4即 most bytes 4,使用4个字节来表示完整的UTF-8。mysql的 utf8 编码最大字符长度为 3 字节,如果遇到 4 字节的宽字符就会插入异常了。三个字节的 UTF-8 最大能编码的 Unicode 字符是 0xffff,也就是 Unicode 中的基本多文种平面(BMP)。也就是说,任何不在基本多文本平面的 Unicode字符,都无法使用 Mysql 的 utf8 字符集存储。包括 Emoji原创 2020-09-14 10:57:48 · 6797 阅读 · 0 评论 -
mysql中json字段的常用操作
新版本5.7.20中加入了对json字段的支持,这无疑对数据的操作更加方便了。下面我们就来一起学习下在mysql中如何操作json字段一,创建表CREATE TABLE `t_sys_userinfo` ( `USR_NO` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT ...原创 2019-11-06 12:59:42 · 579 阅读 · 0 评论 -
导致Mapped Statements collection does not contain value for...几种原因
1、没有使用<![CDATA[ XXXX ]]>语法,导致if语句引用的语法错误。2、map.xml中没有加入namespace3、map.xml中的方法名与Dao中的方法名不同4、map.xml没有加入到mybatis-config.xml配置中5、map.xml文件名和mybatis-config.xml中所写的map名称不相同。...原创 2019-11-06 11:07:48 · 1025 阅读 · 0 评论 -
Mysql批量更新或插入的一个设置&allowMultiQueries=true
数据库的连接url上添加&allowMultiQueries=true问题:我们经常会遇到这样的需求,那就是利用Mybatis批量更新或者批量插入,但是,实际上即使Mybatis完美支持你的sql,你也得看看你说操作的数据库是否支持<update id="updateUserInfo" parameterType="java.util.List"> <f...原创 2019-10-18 18:55:30 · 515 阅读 · 0 评论 -
mysql命令gruop by报错this is incompatible with sql_mode=only_full_group_by
mysql命令gruop by报错this is incompatible with sql_mode=only_full_group_by在mysql 工具 搜索或者插入数据时报下面错误:ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated...转载 2018-01-19 12:52:37 · 269 阅读 · 0 评论 -
mysql中模糊搜索&截取字符内置函数
MySQL使用内置函数来进行模糊搜索(locate()等)常用的一共有4个方法,如下:1. 使用locate()方法 1.1.普通用法: SELECT `column` from `table` where locate('keyword', `condition`)>0 类似于 java 的 index...原创 2019-10-18 19:00:33 · 269 阅读 · 0 评论 -
MySQL事务隔离
转自:https://www.cnblogs.com/digdeep/archive/2015/11/16/4968453.html1. 数据库事务ACID特性数据库事务的4个特性:原子性(Atomic):事务中的多个操作,不可分割,要么都成功,要么都失败; All or Nothing.一致性(Consistency):事务操作之后, 数据库所处的状态和业务规则是一致的; 比如a,...转载 2018-11-06 15:41:27 · 113 阅读 · 0 评论 -
数据库设计之三大范式NF
国内绝大多数院校用的王珊的《数据库系统概论》这本教材,某些方面并没有给出很详细很明确的解释,与实际应用联系不那么紧密,你有这样的疑问也是挺正常的。我教《数据库原理》这门课有几年了,有很多学生提出了和你一样的问题,试着给你解释一下吧。(基本来自于我上课的内容,某些地方为了不过于啰嗦,放弃了一定的严谨,主要是在“关系”和“表”上)首先要明白”范式(NF)”是什么意思。按照教材中的定义...转载 2018-05-31 20:41:27 · 1480 阅读 · 0 评论 -
Mysql中BTREE索引与HASH索引的区别
MySQL的BTREE索引和HASH索引的区别ash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。可 能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tree 高很多,为什么大家不都用 Hash 索引而还要使用 B-Tree...转载 2018-05-31 20:19:40 · 297 阅读 · 0 评论 -
mysql中使用游标
mysql存储过程使用递归Error Code : 1456 Recursive limit 0 (as set by the max_sp_recursion_depth variable) was exceeded for routine pro_app_rs_right_update···树的深度不超过10,怎么可能深度出问题,于是百度了一下,网上给了解决方案,加上下面代码就ok:...转载 2018-01-22 16:21:22 · 1610 阅读 · 0 评论 -
Mysql中存储过程与自定义函数的区别
创建存储过程:CREATE[definer= {user|current_user}]PROCEDUREsp_name ([ proc_parameter [,proc_parameter ...]]) [ characteristics..] routime_body其中:proc_parameter : [IN|OUT|INOUT] parameter_name type...转载 2018-06-08 10:41:50 · 394 阅读 · 0 评论 -
mysql索引详谈
介绍mysql的作用以及类型首先:先假设有一张表,表的数据有10W条数据,其中有一条数据是nickname='css',如果要拿这条数据的话需要些的sql是 SELECT * FROM award WHERE nickname = 'css'一般情况下,在没有建立索引的时候,mysql需要扫描全表及扫描10W条数据找这条数据,如果在nickname上建立索引,那么mysql只需要扫描一行数...原创 2019-04-09 15:38:49 · 173 阅读 · 0 评论 -
图解SQL的inner join、left join、right join、full outer join、union、union all的区别
对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇文章,通过文氏图 Venn diagrams 解释了SQL的Join。我觉得清楚易懂,转过来。假设我们有两张表。Table A 是左边的表。Table B 是右边的表。原创 2017-10-15 10:10:36 · 424 阅读 · 0 评论 -
navicat导出csv乱码问题
解决步骤:1.把导出的csv文件用notepad++打开,然后在选项栏中_格式_中以UTF-8格式编码 2.之后正常用csv打开(把文件另存为到其他的盘中即可)原创 2017-10-14 11:11:41 · 9598 阅读 · 2 评论 -
数据库中#{}与${}区别
${}和#{}的区别2016-10-17 11:53 3810人阅读 评论(3) 收藏 举报 分类:mybatis(4) 版权声明:本文为博主原创文章,未经博主允许不得转载。原sql语句:[sql] view plain copydelete from ups_role_permission_dataparams where role_id = #{rol...转载 2017-07-03 17:02:56 · 7464 阅读 · 0 评论 -
MySQL添加新用户、为用户创建数据库、为新用户分配权限 标签: MySQL 2016-12-17 16:41 2768人阅读 评论(0) 收藏 举报 分类: =======学习心得=======
MySQL添加新用户、为用户创建数据库、为新用户分配权限标签: MySQL2016-12-17 16:41 2768人阅读 评论(0) 收藏 举报 分类:=======学习心得=======(23) 版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]登录MySQL转载 2017-07-12 21:58:07 · 446 阅读 · 0 评论 -
数据库中Having放在分组函数group by后过滤查询组
数据库中group by和having语法使用详解题:把一天中充值记录超过2次且总金额超过50的用户充值记录查询出来先看看group by的语法: [java] view plain copySELECT column1, SUM(column2) FROM "list-of-tables" GROUP转载 2017-07-20 17:10:07 · 3382 阅读 · 0 评论 -
mybatis 中的<![CDATA[ ]]>防止转义xml中特殊字符
mybatis 中的在使用mybatis 时我们sql是写在xml 映射文件中,如果写的sql中有一些特殊的字符的话,在解析xml文件的时候会被转义,但我们不希望他被转义,所以我们要使用来解决。 是什么,这是XML语法。在CDATA内部的所有内容都会被解析器忽略。如果文本包含了很多的"但是有个问题那就是 等这些标签都不转载 2017-07-21 08:54:52 · 8358 阅读 · 0 评论 -
Mybatis进行id类型、String类型、map类型、ben类型参数传入Sql查询
Mybatis进行id类型、String类型、map类型、ben类型参数传入Sql查询查看原文:http://www.ibloger.net/article/285.html用习惯了hibernate,再换成Mybatis总会遇到一些变态问题,正如下面的错误提示,用mybatis查询时,传入一个字符串传参数,且进行判断时,会报 错误转载 2017-07-21 09:28:31 · 1007 阅读 · 0 评论 -
SQL-什么是视图及如何使用视图
SQL-什么是视图及如何使用视图什么是视图?它们怎样工作?何时使用它们?如何利用视图简化执行的某些SQL操作?1. 使用视图的原因 A. 重用SQL语句。 B. 简化复杂的SQL操作。在编写查询后,可以方便地重用它而不必知道其基本查询。 C. 使用表的一部分而不是整个表。 D. 保护数据。可以授予用户访问表的特定部分的权限,转载 2017-07-29 12:08:12 · 4635 阅读 · 0 评论 -
MySQL UNION与UNION ALL的区别
MySQL UNION与UNION ALL的区别MySQL UNION 用于把来自多个 SELECT 语句的结果组合到一个结果集合中。语法为:SELECT column,... FROM table1 UNION [ALL]SELECT column,... FROM table2...在多个 SELECT 语句中,对应的列应该具有相同的字段属性,且转载 2017-08-24 20:51:29 · 357 阅读 · 0 评论 -
mysql中or和in的效率问题 (有无索引差别很大o(n)/log(n))
mysql中or和in的效率问题 在网上一直看到的是or和in的效率没啥区别,一直也感觉是这样,前几天刚好在看《mysql数据库开发的36条军规》的文章,里面提到了or和in的效率问题,文中提到or的效率为O(n),而in的效率为O(logn), 当n越大的时候效率相差越明显。今天刚好有时间决定对心中的疑惑进行测试,下面是详细的测试过程。第一步,创建测试表,转载 2017-08-24 21:00:41 · 2607 阅读 · 1 评论 -
在进行数据库编程时使用连接池有什么优势
由于创建连接和释放连接都有很大的开销(尤其是数据库服务器不在本地时,每次建立连接都需要进行TCP的三次握手,释放连接需要进行TCP四次握手,造成的开销是不可忽视的)。为了提升系统访问数据库的性能,可以事先创建若干连接置于连接池中,需要时直接从连接池获取,使用结束时归还连接池而不必关闭连接,从而避免频繁创建和释放连接所造成的开销,这是典型的用空间换取时间的策略(浪费了空间存储连接,但节省了创原创 2017-09-22 11:36:50 · 404 阅读 · 0 评论 -
Mysql User表权限字段说明
Select_priv。确定用户是否可以通过SELECT命令选择数据。Insert_priv。确定用户是否可以通过INSERT命令插入数据。Update_priv。确定用户是否可以通过UPDATE命令修改现有数据。Delete_priv。确定用户是否可以通过DELETE命令删除现有数据。Create_priv。确定用户是否可以创建新的数据库和表。Drop_priv。确定用户是否原创 2017-10-04 20:11:15 · 1420 阅读 · 0 评论 -
网卡域名解析指向不到127.0.0.1导致Navicat在断网时连不上数据库
Navicat断网时连不上数据库最近安装了破解的Navicat,在有网的条件下可以连接本地安装的MySQL数据库,但断网之后就不可以,如下:于是上网查资料,发现原因为:localhost可以看成是一个域名,在一大部分情况下,它能解析出IP地址127.0.0.1而指向到本机,但是在本机的所有网卡都没有获得IP地址的情况下,在navicat中localhost就无法解析原创 2017-10-29 21:27:26 · 2032 阅读 · 0 评论 -
MyBatis 判断条件为等于的问题(<if test="type == '1'.toString()"> xxx </if>
http://blog.csdn.net/shenzhenNBA/article/details/46673327转载 2017-06-29 15:43:35 · 6224 阅读 · 0 评论