爱看书的阿东

赐他一块白色石头,石头上写着新名

浅谈设计模式 - 迭代器模式(十一)

前言

迭代器模式通常只需要知道该模式的实现原理和了解结构图即可,在设计模式当中自己实现的情况几乎是没有的,所以这个模式简单的过一遍。

阅读全文 »

《自控力》读书笔记

[TOC]

前言

​ 这本书的封面比较有意思,一个大大的甜筒。还好这是书,如果是实物我肯定已经吃起来了。这本书大致就是告诉你如何让你在看到如同封面这般诱惑的情况下依然可以保持很好的自控力。

​ 如果能把一遍文章仔细看完,静下心来认认真真的做做某件事,我相信都是对自控力的挑战,这本书如果看着费力或者想偷懒,个人建议阅读每一个章节最后的部分,然后根据总结选择自己感兴趣的内容即可。当然连打开书或者看书的兴趣都没有,那可以看看我的这篇笔记,希望可以让你了解到这本书讲了那些内容。

阅读全文 »

Postgresql 关于日期比较的一个小坑

关于日期方面的比较方面,由于多年JAVA写法的固定观念,导致卡了一点时间排查这个问题。

按照正常的逻辑,一般情况下我们都会想到 yyyy-MM-dd HH:mm:ss,这样写通常没有什么问题,但是在postgre当中是存在问题的。因为 HH默认是12小时制!!!这个坑会导致查找数据出现下面莫名其妙的问题:

首先按照下面的sql进行查询:

得到查询结果如下:

这个结果是出乎预料的,因为正常来说应该查出来是0点的数据:

将上面的00:59:59 时间点改为01:59:59,结果查出来是第一条居然是13点的数据:

于是我停了下来,我套入各种数据不断尝试,猜想这个1点和13点都代表1点,或许使用了12小时制,果不其然,正确的写法应该如下:

这一下结果就正确了

总结:

这周问题是习惯性思维的问题,但是个人想要吐槽一下这个设计有点点坑人=-=

《小王子》读书笔记

[TOC]

前言

​ 《小王子》这本书应该有不少人看过了,以前一直听说过他的名号,然而到了现在才来看,这本书也会我少有的看了两遍的的的书,每看一遍心理的感受都不相同。《小王子》个人阅读的版本是李继宏翻译的版本,个人认为翻译的非常棒,下面就来展开说一下这次读小王子这本书的感受。

阅读全文 »

《乌合之众》读书笔记

前言

​ 这本书是为了试验多多平台的书籍质量买的,也就5块钱,书本的内容大致也是扫读的,基本没有太过细看,《乌合之众》这本书是具有时代背景的局限性的,在法国大革命的背景下,作者的对于群众进行了一系列的批判,包括群众弱化个人贡献,群众降低个人能力,以及群众的盲目性等等。同时作者带有女性的各种歧视也可以从书本当中看到。我不太明白这本书为什么在国内如此推崇,所以这篇读书笔记将记录我的个人看法。

阅读全文 »

《如何有效读一本书》读书笔记

前言

​ 这段时间由于搬家和布置家具,基本没怎么看书,安顿好之后,又重新开启了读书计划,这次看的一本书讲的是读书方法相关的内容,个人从中还是有不少的成长的,并且书中作者的某些做法竟然自己也在做,这本书是一本比较有意思的书。需要注意的是作者是个日本人,有些章节的参考价值不大,所以只挑选了符合“国情”的一些内容作为笔记。

阅读全文 »

一次大数据文件处理日记

文章推荐

https://mp.weixin.qq.com/s/_GSq-UXnDhgG6k0qHqM-6A

前言:

​ 最近在做业务功能的时候,拿到一个非常”简单”的需求,把一个 30万行的数据文件按照特定的格式进行入库,文件格式和字段的内容都有对应的规定。这种需求其实还算比较常见,通常这一类需求不管系统配置多么强悍,都不可能无脑的读取插入。趁着这个需求搜集了一下几种常见的做法。下面就来介绍一下解决这种大数据文件的常用套路。

阅读全文 »

如何实现update select 语句

前言:

​ 有些时候我们会遇到如下情况,我们需要依赖一张表的查询结果来更新另一张表,比如我们存在一张主表和一张关联表,我们需要把关联表的部分字段数据同步到主表的里面。

​ 这次的文章出现也是因为这样一个类似的需求,个人需要把一个30万行(后续会发文介绍常见的处理手段)的数据文件入库,同时需要将部分字段迁移到另一张表,两个表之间通过两个字段进行and匹配。下面画一下结构图:

​ 处理方式也比较简单,直接使用sql就可以完成,这篇文章针对这个小需求,总结一下update select 的几种实现方式。

阅读全文 »

Navicat如何复制数据库

前言:

​ 这篇文章简单记录一下如何通过navicat备份一整个数据库留个记录,节省后面百度的时间。

​ 注意,这里依照postgres数据库作为案例。

第一步:备份数据库

​ 首先我们选择任意想要复制的数据库,选择备份按钮。

​ 接着,我们可以在常规里面进行基本的配置,,可以在对象选择里面进行基本的配置。

​ 点击备份之后,我们可以看到信息日志,navicat正在为我们备份整改数据库的内容。

​ 备份完成之后,在备份的列表里面,可以看到生成对应的日期时间戳生成的对应db文件。

关键的地方来了,到了这一步,说明整个库的数据和结构我们都备份好了,现在我们需要将其提取到sql里面,用做新的数据库导入。右击需要导出sql文件的备份,点击提取SQL

​ 接着我们选择提取sql,然后指定一个目录的位置,确定之后,navicat就开始将整个备份导出到sql。同样耐心等待信息日志。

这个过程可能会很长,请耐心等待

第二步:新建需要复制的数据

​ 这个操作应该简单的不能再简单了,就是新建一个新的数据库。

第三步:导入备份数据库

​ 这一步也是非常简单的,右击选择数据库,,选择运行sql文件,找到刚刚提取出来的sql文件导入,然后耐心等待即可。

这个过程比较长,数据库大的话几分钟,甚至小时都是有可能的,这时候可以去干干别的事情,进度条不动不一定是死机了,可能是数据过大没有加载进度条

总结:

​ 这次简单记录的一下如何快速的复制一个数据库,当然更快的方式是使用pq_dump(针对不同数据库有不同的备份命令)。速度要比navicat 快上好几倍。但是通常情况下我们连接数据库的服务器或者客户端都不在本地,这种方式备份和复制整个库是十分方便的。

​ 同时养成良好的备份习惯有助于严重失误的时候进行回溯。

《洛丽塔》读书笔记

前言:

​ 首先说明一下,个人看的版本是主万翻译的版本,这本书我只看了一半之后实在看不下去了(原因下文会进行说明),就跑去看了97版本的电影,62版本的黑白电影也看了一部分片段,这本书是之前看B站某UP主直播从弹幕看到有人强烈推荐这本书,本着好奇去搜了一下,没想要作者是个王者,惭愧。这次的读书笔记注定只是片段。

阅读全文 »