数据库
文章平均质量分 60
Mr_EvanChen
这个作者很懒,什么都没留下…
展开
-
【MongoDB】新增、删除字段(属性)
1、新增字段(属性)db.Task.update( {}, { $set: { memoOld: null} }, false, true)新增memoOld字段,需要什么类型的就把null替换为相应的值,比如字符串“hahaha”、比如NumberInt(1)。2、删除字段(属性)db.Task.update( {}, { $unset: { memo...原创 2019-09-29 19:22:53 · 6100 阅读 · 0 评论 -
【MongoDB】基本数据类型、常用命令之增加、更新、删除
一、基本数据类型(仅shell支持的): 1.null---表示空值或者该字段不存在,如{"name":null} 2.布尔 --- 和java中的布尔一样,有两种:true,false,如{"sex":true} 3.浮点数---shell中所有的数字都是浮点数,如{"age":12},{"money":2333.65}。 4.字符串---和java中的差不多,在...转载 2019-08-16 15:11:03 · 617 阅读 · 0 评论 -
【MongoDB】执行js脚本初始化数据
1、js脚本例如往某个集合(ClientVersionRecord)插入多条初始化数据,init.js脚本如下:db.ClientVersionRecord.insertMany( [ { "_id" : "11111111", "name" : "hahaha" }, { ...原创 2019-08-04 16:47:11 · 2408 阅读 · 0 评论 -
【MongoDB】导出mongoexport和导入mongoimport
一、导出工具mongoexport简介,通过帮助先了解下mongoexport的功能参数[root@iZ2ze4b308vd83fulq9n7iZ ~]# mongoexport --helpUsage: mongoexport <options>Export data from MongoDB in CSV or JSON format.See http://d...转载 2019-07-30 19:16:50 · 1372 阅读 · 0 评论 -
【MongoDB】$in和$eq操作数
在实际项目中,查询数据时,有以下两种条件我们经常会遇到:①查询参数是list类型,判断某个字段(String)是不是在这个list之中。②查询参数是一个String类型,判断这个参数是不是在某个字段(list)之中。详细地:1、$in针对条件①,比如某页面的列表筛选条件中有个所属项目的条件,是支持多选的,那么自然到后端是list类型的ids。或者类似的场景还有一些状态的条...原创 2019-07-10 17:28:32 · 4340 阅读 · 0 评论 -
【MongoDB】使用$lookup做多表关联处理
这篇我们来看mongodb另一个非常有意思的东西,那就是$lookup,我们知道mongodb是一个文档型的数据库,而且它也是最像关系型数据库的一种nosql,但是呢,既然mongodb是无模式的,自然就很难在关系型数据库中非常擅长的多表关联上发挥作用,在这之前,我们可以使用DbRef,但是呢,在mongodb 3.2 中给你增加了一个相当牛逼的手段,那就是$lookup,而且放到了aggre...转载 2019-06-28 15:15:29 · 5232 阅读 · 1 评论 -
【MongoDB】关联查询创建视图view
通常在涉及到多表关联查询的需求时,MongoDB(3.4版本以上)可以采用建立视图(view)的方式来实现。 视图里是不存在真正的数据的,可以把它简单的看成是一个“伪集合”。需要访问视图的内容时,视图数据都是通过实时聚合来自于源集合的。很显然,完全没有空间占用问题,这比冗余强的太多。当然也有一个小小例外,就是system.views集合,这里面存放了所有视图的定义内容,好...原创 2019-06-20 19:02:46 · 4816 阅读 · 0 评论 -
【PostgreSQL】Centos 7 安装 PostgreSQL 10
本文只讲PostgreSQL在CentOS 7.x 下的安装,其他系统请查看:https://www.postgresql.org/downloadPostgreSQL 所用版本为:PostgreSQL 101.安装存储库yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/...转载 2019-05-20 17:37:03 · 250 阅读 · 0 评论 -
【MariaDB】安装MariaDB 10.2.6
mkdir -p /var/log/common/mariadb groupadd mysql useradd -g mysql mysql cd /usr/local/common/mariadb/ ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/common/mariadb...原创 2018-12-20 18:53:02 · 388 阅读 · 0 评论 -
【PostgreSQL】FATAL: Ident authentication failed for user
问题描述 项目部署在服务器上(数据库postgresql同样是安装在该服务器上),启动时发现报错,org.postgresql.util.PSQLException: FATAL: Ident authentication failed for user "ptms"。问题原因 postgresql的一个配置文件pg_hba.conf中没有信任该服务器ip导致报...原创 2018-11-09 15:50:56 · 6503 阅读 · 0 评论 -
【MySQL】内连接,外连接,右连接,左连接
JOIN的含义就如英文单词“join”一样,连接两张表,大致分为内连接,外连接,右连接,左连接,自然连接。这里描述先甩出一张用烂了的图,然后插入测试数据。 CREATE TABLE t_blog( id INT PRIMARY KEY AUTO_INCREMENT, title VARCHAR(50), typeId IN...转载 2018-09-27 20:28:30 · 260 阅读 · 0 评论 -
【MyBatis】解决数据库字段名称与Java实体类属性名称不一致问题
问题描述: 有时候在项目中会遇到数据库字段名称与实体类属性名称取得不一样的情况,如下: 数据库里的数据为: 此时,如果我们查询该表的某条数据,ProjectMapper.xml代码为 <select id="findProjectById" resultType="com.yealink.ptms.pojo.Project"&g...原创 2018-09-17 19:12:47 · 1993 阅读 · 1 评论 -
【MyBatis】foreach实现postgresql的json类型数据的集合包含遍历查询
目录需求描述解决思路运行结果需求描述 如下图所示,sub_rule表的detail字段是json类型的(数据库采用的是postgresql),里面存的是预先定义好的规则,例如某规则是{"开发类型":["新功能","优化细节交互"], "代码规模":["100-500行","500-100行"], "开发能力":["1A"原创 2018-09-03 18:34:49 · 3821 阅读 · 0 评论 -
【PostgreSQL】json和jsonb数据类型
PostgreSQL支持两种json数据类型:json和jsonb,而两者唯一的区别在于效率,json是对输入的完整拷贝,使用时再去解析,所以它会保留输入的空格,重复键以及顺序等。而jsonb是解析输入后保存的二进制,它在解析时会删除不必要的空格和重复的键,顺序和输入可能也不相同。使用时不用再次解析。两者对重复键的处理都是保留最后一个键值对。效率的差别:json类型存储快,使用慢,j...转载 2018-08-29 18:38:35 · 6582 阅读 · 0 评论 -
【PostgreSQL】MyBatis中自定义typeHandler映射PostgreSQL中json类型字段
数据库PostgreSQL,表sub_rule的detail字段类型为json实体类中detail字段类型为Objectpublic class SubRule { private String id; private String name; private Object detail; //json类型 private...原创 2018-08-27 19:19:41 · 5506 阅读 · 1 评论 -
【MySQL】CentOS忘记、重置MySQL密码
1.修改MySQL的登录设置: 1 # vim /etc/my.cnf 加上一句:skip-grant-tables如: 1 2 3 [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock 2.重启my...转载 2018-07-20 15:37:11 · 188 阅读 · 0 评论 -
【Mariadb 】Centos修改重置root用户密码
1. 知道root密码,需要修改方法a. 登入数据库来修改[html] view plain copy# mysql -uroot -p /*输入密码进入*/ /*第一个方式:直接编辑数据库字段*/ MariaDB [(none)]> use mysql; MariaDB [mysql]> UPDATE user SET password=password...转载 2018-07-11 19:28:24 · 752 阅读 · 0 评论 -
【MongoDB】主从复制/同步
目前是在一台服务器(10.86.6.126)上进行模拟主从同步实验,多台服务器的情况也是类似的。端口号:27019为master,端口号:27020为slave,目录结构如下:...原创 2018-06-12 18:34:55 · 646 阅读 · 0 评论 -
【MyBatis 】Sql查询in foreach
问题描述:需求是传入String数组进行查询,于是想使用in foreach。一开始是这样写的 <select id="findByMutilClientType" resultType="com.yealink.version.pojo.Version" parameterType="java.util.List"> SELECT * FROM version v ...原创 2018-05-18 11:57:40 · 537 阅读 · 0 评论 -
【MySQL】ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'new_180423'
问题描述: 在登录Linux的MySQL时,遇到一个很神奇的问题,执行mysql -u root –p,输入密码后一直提示ERROR 1045 (28000): Access denied for user'root'@'localhost' (using password: YES),上网查了之后基本都是提示修改密码。首先,我记得我之前在安装的时候设置过密码为root,而且在本地用n...原创 2018-05-14 19:04:46 · 5722 阅读 · 0 评论 -
【Linux】导入/导出数据库/sql文件
导入数据库一、首先建空数据库格式: mysql>create database 数据库名;举例: mysql>create database abc;二、导入数据库方法一: 选择数据库 mysql>use abc;设置数据库编码 mysql>set names utf8;导入数据(注意sql文件的路径) mysql>source /home/abc/abc.sql;方...转载 2018-04-27 11:53:08 · 626 阅读 · 0 评论 -
DRUID连接池的介绍与配置
DRUID连接池的介绍与配置1. Druid是什么?DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池2. 在哪里下载druid正式版本下载:maven中央仓库: http://central.maven.org/maven2/com/alib...转载 2018-04-08 15:52:16 · 729 阅读 · 0 评论 -
SQL注入详解及预防
SQL注入详解及预防1.1.1 摘要 日前,国内最大的程序员社区CSDN网站的用户数据库被黑客公开发布,600万用户的登录名及密码被公开泄露,随后又有多家网站的用户密码被流传于网络,连日来引发众多网民对自己账号、密码等互联网信息被盗取的普遍担忧。 网络安全成为了现在互联网的焦点,这也恰恰触动了每一位用户的神经,由于设计的漏洞导致了不可收拾的恶果,验证了一句话“出来混的,迟早是要还...转载 2018-03-28 19:28:54 · 547 阅读 · 0 评论 -
sql语句中----删除表数据drop、truncate和delete的用法
sql语句中----删除表数据drop、truncate和delete的用法说到删除表数据的关键字,大家记得最多的可能就是delete了,然而我们做数据库开发,读取数据库数据.对另外的两兄弟用得就比较少了,现在来介绍另外两个兄弟,都是删除表数据的,其实也是很容易理解的。一、drop出没场合:drop table tb --tb表示数据表的名字,下同绝招:删除内转载 2017-09-20 09:06:18 · 634 阅读 · 0 评论 -
数据库设计三大范式
数据库设计三大范式 为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。 在实际开发中最为常见的设计范式有三个:1.第一范式(确保每列保持原子性)第一范式是最基本的范式。如果数据库表中转载 2017-09-19 16:22:43 · 403 阅读 · 0 评论 -
关系型数据库的ACID
一.事务 定义:所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。 准备工作:为了说明事务的ACID原理,我们使用银行账户及资金管理的案例进行分析。 [sql] view plain copy print?// 创建数据库 create转载 2017-07-03 09:39:04 · 504 阅读 · 0 评论 -
从关系型数据库到非关系型数据库
1. 关系型数据库关系型数据库,是指采用了关系模型来组织数据的数据库。关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成为主流数据库结构的主流模型。简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。关系模型中常用的概念:转载 2017-07-03 09:34:27 · 243 阅读 · 0 评论 -
(MySql)distinct、group by去重
mysql distinct 去重在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是 distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰了很久,用distinct不能解决的话,我只有用二重循环查询来解决翻译 2017-05-25 09:08:08 · 1159 阅读 · 0 评论 -
一千行MySQL学习笔记
本文转载自:http://www.cnblogs.com/shockerli/p/1000-plus-line-mysql-notes.html/* 启动MySQL */net start mysql/* 连接与断开服务器 */mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL */mysqld --skip-grant-tables-转载 2017-04-10 09:14:31 · 245 阅读 · 0 评论