MAC安装MongoDB

下载安装

  1. curl -O https://fastdl.mongodb.org/osx/mongodb-osx-ssl-x86_64-4.0.5.tgz 或者 官网下载tar包
  2. 解压 tar -zxvf mongodb-osx-ssl-x86_64-4.0.5.tgz
  3. 重命名 mv ./mongodb-osx-ssl-x86_64-4.0.5.tgz ./mongodb
  4. 移动到合适位置 sudo mv ./mongodb /usr/local/opt/
  5. 在.bashrc文件添加 export PATH=/usr/local/opt/mongodb/bin:$PATH

brew安装

  • sudo brew install mongodb
  • sudo brew install mongodb --with-openssl // 要安装支持 TLS/SSL 命令
  • sudo brew install mongodb --devel // 安装最新开发版本

阅读更多

postgres触发器

触发器的创建语法

1
2
3
4
5
6
7
8
CREATE [CONSTRAINT] TRIGGER name 
{ BEFORE | AFTER | INSTEAD OF } { event [ OR ...] }
ON table_name
[ FROM referenced_table_name ]
{[ NOT DEFERRABLE ][ DEFERRABLE ]{[ INITIALLY IMMEDIATE ][ INITIALLY DEFERRED]}}
[ FOR [ EACH ] { ROW | STATEMENT } ]
[ WHEN (condition) ]
EXECUTE PROCEDURE function_name ( arguments )

阅读更多

拼接多个字段的值

GROUP_CONCAT()函数

GROUP_CONCAT函数返回一个字符串结果,该结果由分组中的值连接组合而成。

1
select stylist_id,real_name,group_concat(is_show,m2_stylist_show_product.id,pic_url) as show_id_pic_url,max(is_show) as is_show

CONCAT()函数

CONCAT()函数用于将多个字符串连接成一个字符串。

+号连接

1
select studentID+‘-’+studentName+'-'+studentScore AS studentInfo from student

阅读更多

PostgreSQL pgcrypto模块加密解密函数

pgcrypto 模块

加密后返回二进制的数据

  1. 加密解密函数

    encrypt(data bytea, key bytea, type text) returns bytea

    decrypt(data bytea, key bytea, type text) returns bytea

    例子:

    encrypt(data, 'fooz', 'bf-cbc/pad:pkcs')

    encrypt('this is a message', 'key', 'aes-ecb')

    decrypt('\x39c3c665757a0ff973b83fb98cc3d63f', 'key', 'aes-ecb')

  2. 类型转换

    pgcrypto模块加密出来的二进制数据,转换成base64后与PHP加密的结果。

    encode(data bytea, type text)

    decode(string text, type text)

    aes解密是自动识别 aes128, aes192, aes256,aes加密默认是aes128,暂时没发现怎么指定位数

    阅读更多

PostgreSQL pl/pgsql 编写存储过程

基本结构

1
2
3
4
5
6
7
8
9
create or replace function somefunc() 
returns varchar as
$$
declare
name varchar := 'wangzhen';
begin
return name;
end
$$ language plpgsql;

$$作用

  • 函数代码在function中实际上为一个字符串,代码1和代码2等价,但代码中字符串的单引号需要写两个进行转义。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    -- 代码1
    create or replace function somefunc()
    returns varchar as
    $$
    declare
    name varchar := 'wangzhen';
    begin
    return name;
    end
    $$ language plpgsql;

    阅读更多