安装模块

注意: 我的运行环境是 Ubuntu 10.04 和 PostgreSQL 8.4

首先安装 postgresql-contrib 包并重启数据库服务器,然后检查 contrib 目录看是否包含一些可用模块:
 

?

1
2
3
4
sudo apt-get install postgresql-contrib
sudo /etc/init.d/postgresql-8.4 restart
cd /usr/share/postgresql/8.4/contrib/
ls

然后我们创建一个名为 module_test 的数据库:
 

?

1
2
su postgres
createdb module_test

然后我们将模块 chkpass, fuzzystrmatch, isn 和 hstore 应用到 module_test 数据库,执行下面命令即可:
 

?

1
2
3
4
psql -d module_test -f chkpass.sql
psql -d module_test -f fuzzystrmatch.sql
psql -d module_test -f isn.sql
psql -d module_test -f hstore.sql

接下来,我们来看看每个模块是如何使用的。
 
使用 chkpass

chkpass 模块引入一个新的数据类型 “chkpass” 这个类型用来存储一个加密的字段,例如密码。使用方法可以从下面的 SQL 里看到,存入 chkpass 字段的字符串会自动进行加密:

 

?

1
2
3
CREATE TABLE accounts (username varchar (100),