随笔分类 -  关系型数据库

mysql,oracle
摘要:幂等性的一个要求是多次操作的结果一致。对于update操作,多次直接的结果都是最后update的值,是满足需求的。但对于insert,如果已经插入,第二次会报错,duplicate error, 主键重复或者unique key duplicate。所以需要做一下处理。 最简单的就是,try cat 阅读全文
posted @ 2019-01-10 16:50 Ryan.Miao 阅读(18517) 评论(0) 推荐(0) 编辑
摘要:select语法 数据 去重多个列 直接用distinct,后面的列都参与去重。只有code, name拼接的组合相同时,去掉重复的 去重指定列,保留其他列 当下遇到需求,需要将其中一个列去重,然后其他列随机取出就可以了。造成这种需求的原因是单表设计不合理,没有拆分成多表,造成多字段冗余,除了唯一性 阅读全文
posted @ 2019-01-05 14:47 Ryan.Miao 阅读(6669) 评论(0) 推荐(1) 编辑
摘要:[TOC] 前一篇的 "centos6安装postgresql" 在centos7发生了一些变化。 安装 下载yum repo https://yum.postgresql.org/repopackages.php 安装server和客户端 初始化db 数据文件依旧是: /var/lib/pgsql 阅读全文
posted @ 2018-12-26 10:59 Ryan.Miao 阅读(2094) 评论(0) 推荐(0) 编辑
摘要:[TOC] 需求和背景 在已有大量经纬度坐标点的情况下,给定一组经纬度如何快速定位到附近的POI有哪些? 现在使用经纬度转geohash的算法,将二维的距离运算转换为like前缀匹配。通过比较9位到5位前缀,来获取附近5米到3km之内的坐标,为了寻求更快的定位方法,测试一下postgres的空间类型 阅读全文
posted @ 2018-12-25 09:00 Ryan.Miao 阅读(7074) 评论(0) 推荐(4) 编辑
摘要:pg除了可以通过dump的方式导入和导出。如果只是导出数据,可以直接使用copy 导出 注意,远程连接也只会导出文件的数据库所在的目录。 语法 导入 语法 阅读全文
posted @ 2018-12-21 18:39 Ryan.Miao 阅读(1228) 评论(0) 推荐(0) 编辑
摘要:Postgresql和MySQL还是有很多不同的。就比如授权来说。当下有个业务场景,我们的报表数据库需要根据业务划分不同的db,然后创建对应的user。 如果是MySQL, 可以这样做 对于Postgres9.0以上 创建一个用户 ,允许登陆,永不过期 将db权限授予user 或者,分别授权 这时候 阅读全文
posted @ 2018-10-15 22:58 Ryan.Miao 阅读(2744) 评论(0) 推荐(0) 编辑
摘要:前言 mysql最初的免费战略已经深入人心,感觉自己一直都在用mysql。今天在centos7下装mysql。发现原来centos下默认没有mysql,因为开始收费了,取而代之的是另一个mysql的分支 ,这个是mysql创始人重新主导的分支。But, whatever, I want mysql. 阅读全文
posted @ 2016-09-17 23:43 Ryan.Miao 阅读(1122) 评论(0) 推荐(0) 编辑
摘要:参考原文教程: "Centos7下修改mysql5.6编码方式 解决网站中文显示问号" 解决办法: 修改MySQL数据库字符编码为UTF 8,UTF 8包含全世界所有国家需要用到的字符,是国际编码。 具体操作: 1、进入MySQL控制台 输入密码 查看当前mysql运行状态 其中 和`db utf 阅读全文
posted @ 2016-09-17 23:19 Ryan.Miao 阅读(7014) 评论(0) 推荐(1) 编辑
摘要:最近学习测试mybatis,单个增删改查都没问题,最后使用mvn test的时候发现了几个问题: get: 下面记录这两个问题。 1.mysql数据库死锁 这里,感谢http://www.cnblogs.com/lin-xuan/p/5280614.html,我找到了答案。在这里,我还是重现一下: 阅读全文
posted @ 2016-07-22 00:29 Ryan.Miao 阅读(14580) 评论(0) 推荐(1) 编辑
摘要:sql语法很多,是一门完整语言。这里仅仅实现一个功能,不做深入研究。 目标:定时更新表或者清空表。 案例:曾经做过定时清空位置信息表的任务。(然而,当时并未考虑服务器挂掉后的情况) 本次测试:每5s更新表字段+1 1.prepare 创建一个表: 2.创建一个存储过程 注意,创建存储过程的时候,如果 阅读全文
posted @ 2016-07-12 22:56 Ryan.Miao 阅读(21713) 评论(2) 推荐(3) 编辑
摘要:最近做演示项目的时候需要一个数据库,但不想安装。于是查看了embedded datasource : h2 h2: 依赖: h2: 驱动名称: h2: jdbc url: 内存模式: embedded: 最关键的是,file要指定绝对路径,即不能jdbc:h2:file:db/springboot这 阅读全文
posted @ 2016-06-29 00:42 Ryan.Miao 阅读(1898) 评论(0) 推荐(0) 编辑
摘要:进来准备使用一种embedded database,即嵌入式数据库,方便随项目本地存储。目前学习打算是sqlite和H2。 document:http://www.runoob.com/sqlite/sqlite-java.html 1.连接数据库 添加依赖jdbc: 链接代码: 执行结束发现,在项 阅读全文
posted @ 2016-06-20 22:46 Ryan.Miao 阅读(754) 评论(0) 推荐(0) 编辑
摘要:参考:http://www.cnblogs.com/duanjie/archive/2011/08/13/2136862.html 说到去重复,感觉逻辑很简单。但动手写起来却并不是那么容易。面试的时候让写sql语句,然后没完整的写出来,然后面试官说你这没结果啊! 去重复首先要把要留下的选出来,然后删 阅读全文
posted @ 2016-03-15 11:28 Ryan.Miao 阅读(635) 评论(0) 推荐(0) 编辑
摘要:以前查询都是随便查到结果就行了,因为发现每次查询的数量都很少,当然现在也是。不过效率一直是程序员执着的追求,我就多了解下差距。 首先是多张表联合,一张模板种类category,一张模板表template,一张橱窗表shopwin,一张橱窗类型表type 现在要查询一个橱窗类型为1,即shopwin中 阅读全文
posted @ 2016-02-25 13:36 Ryan.Miao 阅读(236) 评论(0) 推荐(0) 编辑
摘要:1 --创建临时表空间 2 create temporary tablespace pr_temp 3 tempfile 'F:\app\data\tablespace\pr_temp.dbf' 4 size 50m 5 autoextend on next 50m maxsize 2048m 6... 阅读全文
posted @ 2015-10-10 18:19 Ryan.Miao 阅读(411) 评论(0) 推荐(0) 编辑
摘要:1 --创建表 2 create table person( 3 id number primary key, 4 name varchar2(40), 5 birth date 6 ); 7 --创建序列 8 create sequence person_id_seq 9 increment b... 阅读全文
posted @ 2015-10-10 18:18 Ryan.Miao 阅读(324) 评论(0) 推荐(0) 编辑
摘要:group by 的基本用法 group by做为分组来使用,后面为条件,可以有多个条件,条件相同的为一组,配合聚合函数进行相关统计。在不同数据库中用法稍有不同,这里只测试mysql和oracle。 1.准备好一张数据表: mysql oracle 2.首先以name为分组条件: 在mysql中执行 阅读全文
posted @ 2015-09-07 14:12 Ryan.Miao 阅读(6890) 评论(0) 推荐(0) 编辑
摘要:今天做oracle日期插入的时候突然开始疑惑日期是如何插入的。 用框架久了,反而不自己做简单的工作了。比如插入。 像insert这样的语句很少写了,除了备份sql的时候。 言归正传, mysql插入日期不限制分隔符,不必明确格式, 至少测试了n次都成功了。 也遇到奇葩的: 居然成功了。 oracle 阅读全文
posted @ 2015-09-02 13:59 Ryan.Miao 阅读(1379) 评论(0) 推荐(0) 编辑
摘要:导入oracle数据,选择工具-》odbc导入-》Excel 然后关于日期的插入出错,修改后如下: 阅读全文
posted @ 2015-09-01 18:30 Ryan.Miao 阅读(1607) 评论(1) 推荐(0) 编辑
摘要:几次通过plsql修改表结构出现这个错误,为人不求甚解真是要不得。我甚至对老大大言不惭的说没有权限,即便是sql语句都不行。结果赤果果地打脸。 最终找到如下原因: 1.操作用户表空间的默认值问题: 这个地方要选择单位,默认是没有选择的。 2.其他权限问题 比如列名无效,比如无授权等。 阅读全文
posted @ 2015-09-01 16:31 Ryan.Miao 阅读(1174) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示