postgresql如何建立数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postgresql如何建立数据库相关的知识,希望对你有一定的参考价值。

为什么我怎么样都不能建立数据库!都说联机至数据库...失败!请高手教下!
请是建立不了!那个是英语版本来的 ?根本都看不懂???????????????》》》》》》》》》

打开软件,进入界面中。

双击“PostgresSQL 9.3”连接服务器

方法一:右键单击“postgres”,选择“新建对象”--新建数据库,设置新的数据库的参数,所有者一般默认为“postgres”

新建完后,不能立即看到界面上更新的数据,需要点击界面上的更新按钮才能够看到数据库的变化情况。

方法二:在插件中输入SQL语言,运行命令

方法三:点击面板上的“执行任意的SQL查询”

参考技术A LZ说清楚些吧,操作系统,POSTGRESQL的版本号,你自己是怎么建立数据库的?

补充:

我猜你可能用的createdb创建的,不是在psql里用SQL语句创建的,如果是createdb创建的话
可能
1、你数据库没启动
2、你数据库的地址或端口没设置对,或者数据库设置的用户验证方式有问题,拒绝了本次连接

如果是端口或地址问题,可以加在createdb上加 -h 地址 -p 端口来解决。
如果是用户验证方式问题,(这个一般只出现在LINUX,而且我记得提示信息应该是“用户验证失败!”),不过如果是这个问题的话,修改pg_hda.conf设置正确的验证信息

POSTGRESQL有中文版的

postgresql 9.6 建立多列索引测试

建立测试表结构

CREATE TABLE t_test

(

    id integer,

    name text COLLATE pg_catalog."default",

    address character varying(500) COLLATE pg_catalog."default"

);


插入测试数据

insert into t_test SELECT generate_series(1,10000000) as key, ‘name‘||(random()*(10^3))::integer, ‘ChangAn Street NO‘||(random()*(10^3))::integer;


建立3列索引

create index idx_t_test_id_name_address on t_test(id,name,address);


1.以下查询语句可以使用索引且较快

索引第一列在where语句,与条件次序无关

一般3毫秒多出结果

explain analyze select * from t_test where id < 2000 and name like ‘name%‘ and address like ‘ChangAn%‘;

explain analyze select * from t_test where address like ‘ChangAn%‘ and name like ‘name%‘ and id < 2000 ;

explain analyze select * from t_test where name like ‘name%‘ and id < 2000 and address like ‘ChangAn%‘  ;

explain analyze select * from t_test where id < 2000

explain analyze select * from t_test where  name like ‘name%‘ and id < 2000 

explain analyze select * from t_test where  address like ‘ChangAn%‘ and id < 2000 ;

explain analyze select * from t_test where address like ‘ChangAn%‘ and name like ‘name%‘ and id < 2000 ;


2.以下可以使用索引,但是查询速度较慢

索引第一列在order by 

explain analyze select * from t_test where address like ‘ChangAn%‘ and name like ‘name%‘ order by id;

17S

explain analyze select * from t_test where address like ‘ChangAn%‘ order by id;

8s

explain analyze select * from t_test where name like ‘name%‘ order by id;

9s


以下语句无法使用索引,索引第一列不在 where 或者 order by


explain analyze select * from t_test where address like ‘ChangAn%‘ and name like ‘name%‘;

explain analyze select * from t_test where address like ‘ChangAn%‘;

explain analyze select * from t_test where name like ‘name%‘;


建立双列索引

create index idx_t_test_name_address on t_test(name,address);

以下语句会使用索引

explain analyze select * from t_test where name = ‘name580‘;

explain analyze select * from t_test where address like ‘ChangAn%‘ and name like ‘name580‘; 

explain analyze select * from t_test where address like ‘ChangAn%‘ and name = ‘name580‘;


下面语句不会使用索引


explain analyze select * from t_test where name  like ‘name%‘

explain analyze select * from t_test where address like ‘ChangAn%‘

explain analyze select * from t_test where address = ‘ChangAn Street NO416‘


本文出自 “yiyi” 博客,请务必保留此出处http://heyiyi.blog.51cto.com/205455/1873178

以上是关于postgresql如何建立数据库的主要内容,如果未能解决你的问题,请参考以下文章

怎样在虚拟机上的linux建立postgresql数据库,然后在windows访问?

postgresql 9.6 建立多列索引测试

postgresql+postgis+pgrouting实现最短路径查询---线数据的处理和建立拓扑

PostgreSQL分区表建立

postgresql的安装与基础语法

postgresql的安装与基础语法