Shell的一些注意事项。
1, 所有命令都要以分号(;)结尾,否则shell会以为你上一条命令还没有输入完,只是因为太长而分成几行输入了。
2, 有路径名的时候,要用引号括起来。
3, Windows下面,Windows的路径名是用\来的,如C:\Windows\System32,而Unix系的都是用/的,如/home/louyx/sec/。Postgresql对这个处理的不好,在Win下面也要用/,例如D:/nsar_forms/xxx.txt。
4, 一些meta-command,也即那些不是直接sql的,一般以反斜杠\开头,常用的几个是:
\c
nsar; 连接到(切换到)nsar这个数据库。
\i
‘D:/table-def.sql‘; 导入并执行sql命令文件,可以将许多命令序列写到一个文件里面,然后导入执行。
\q;
退出shell。
5, 导入/导出某个table为csv
参见http://www.postgresql.org/docs/9.0/static/sql-copy.html
6, 更改某用户密码,
alter user louyx with password ‘you-cannot-know’;
sql相关的
7, 比较的时候更改类型或做其他操作(统称为对某列做function以后再比较),如
Select
... from A, B where cast(a.cik, integer) = cast(b.cik, integer);
Select
... from A, B where upper(a.name) = upper(b.name);