windows 下操作说明
cmd登录/linux
psql -h localhost -U postgres -p 5432
输入密码 :123123
linux另一种登录方式:
sudo su - postgres 回车
psql 回车
\l #列出所有的数据库
\c database_name #切换数据库 \c test 进入到test数据库下
\d #显示当前数据库中所有表
\q #退出
windows 下PostgreSQL导入sql文件
在软件的安装目录的bin文件下打开命令行工具 输入:
psql -d 数据库名称 -h 数据库地址 -p 5432 -U postgres -f sql文件(E:\Config\SQL\iSmartCapDb.sql)
D:\DataBaseTool\Postgresql10\bin>psql -d maplayers3 -h 127.0.0.1 -p 5432 -U postgres -f E:\360Downloads\tc-maplayers安装包\java\maplayres\area_geometry.sql
安装的postgis添加到本数据库,添加空间扩展,在sql运行工具中执行下面语句即可。
CREATE EXTENSION postgis;
CREATE EXTENSION pgrouting;
CREATE EXTENSION postgis_topology;
CREATE EXTENSION fuzzystrmatch;
CREATE EXTENSION postgis_tiger_geocoder;
CREATE EXTENSION address_standardizer;
删除数据库报错ERROR: database “mydb” is being accessed by other users
DETAIL: There are 3 other sessions using the database.
执行下面操作:
SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE datname='mydb' AND pid<>pg_backend_pid();
然后再执行:
drop DATABASE mydb;
语句说明:
pg_terminate_backend:用来终止与数据库的连接的进程id的函数。
pg_stat_activity:是一个系统表,用于存储服务进程的属性和状态。
pg_backend_pid():是一个系统函数,获取附加到当前会话的服务器进程的ID
1.进入到postgresql
psql -h localhost -U postgres -p 5432
2. 创建数据库stereo_images
CREATE DATABASE stereo_images;
3. 切换到stereo_images数据库
\c stereo_images
4. 安装的postgis添加到本数据库,添加空间扩展
CREATE EXTENSION postgis;
CREATE EXTENSION pgrouting;
CREATE EXTENSION postgis_topology;
CREATE EXTENSION fuzzystrmatch;
CREATE EXTENSION postgis_tiger_geocoder;
CREATE EXTENSION address_standardizer;
linux:
5.执行那个sql文件(命令你也可以百度查,我提供一个参考的) psql -f test.sql
或者: 1. 将area_geometry.sql文件上传到服务器 例如: /opt/area_geometry.sql
2. 进入到postgresql的bin目录下,执行.sql文件
3. ./psql –f /opt/area_geometry.sql
windows:
windows 下PostgreSQL导入sql文件
在软件的安装目录的bin文件下打开命令行工具 输入:
psql -d 数据库名称 -h 数据库地址 -p 5432 -U postgres -f sql文件(E:\Config\SQL\iSmartCapDb.sql)
D:\DataBaseTool\Postgresql10\bin>psql -d stereo_images -h 127.0.0.1 -p 5432 -U postgres -f E:\360Downloads\tc-maplayers安装包\java\maplayres\area_geometry.sql
6. 查看表 \d
7. 查看表结构 \d stereo_images
除了前面已经用到的\password命令(设置密码)和\q命令(退出)以外,控制台还提供一系列其他命令。
\h:查看SQL命令的解释,比如\h select。
?:查看psql命令列表。
\l:列出所有数据库。
\c [database_name]:连接其他数据库。
\d:列出当前数据库的所有表格。
\d [table_name]:列出某一张表格的结构。
\du:列出所有用户。
\e:打开文本编辑器。
\conninfo:列出当前数据库和连接的信息。
基本的数据库操作,就是使用一般的SQL语言:
复制代码
创建新表
CREATE TABLE usertbl(name VARCHAR(20), signupdate DATE);
插入数据
INSERT INTO usertbl(name, signupdate) VALUES(‘张三’, ‘2013-12-22’);
选择记录
SELECT * FROM user_tbl;
更新数据
UPDATE user_tbl set name = ‘李四’ WHERE name = ‘张三’;
删除记录
DELETE FROM user_tbl WHERE name = ‘李四’ ;
添加栏位
ALTER TABLE user_tbl ADD email VARCHAR(40);
更新结构
ALTER TABLE usertbl ALTER COLUMN signupdate SET NOT NULL;
更名栏位
ALTER TABLE usertbl RENAME COLUMN signupdate TO signup;
删除栏位
ALTER TABLE user_tbl DROP COLUMN email;
表格更名
ALTER TABLE usertbl RENAME TO backuptbl;
删除表格
DROP TABLE IF EXISTS backup_tbl;