Questions tagged «postgresql»

PostgreSQL是一个开放源代码的,对象关系数据库管理系统(ORDBMS),可用于所有主要平台,包括Linux,UNIX,Windows和OSX。提出问题时,请注明确切的Postgres版本。有关管理或高级功能的问题最好直接到dba.stackexchange.com。

14
运行pg_restore时获得“ [文件头中的[归档]不支持的版本(1.13)””
我刚刚在mac os上升级到了与heroku上的10.2相匹配的postgres 10.2。我正在尝试下载数据库的副本并在本地还原它。在升级之前,还原将正常进行。 我跑 pg_restore --verbose --clean --no-acl --no-owner -h localhost -d database_name backup.dump 但我收到此错误: pg_restore:文件头中的[archiver]不支持的版本(1.13) 数据库似乎运行正常。这是一个Rails应用程序,我升级了pg gem。我可以跑步rake db:create,db:migrate就可以了。

17
按IN值列表排序
我在PostgreSQL 8.3中有一个简单的SQL查询,可获取大量注释。我在子句中为构造提供了一个排序的值列表:INWHERE SELECT * FROM comments WHERE (comments.id IN (1,3,2,4)); 这会以任意顺序返回评论,在我看来,这些评论恰好是ID 1,2,3,4。 我希望结果行的排序类似于IN构造中的列表:(1,3,2,4)。 如何实现呢?

3
如何更改PostgreSQL表并使列唯一?
我在PostgreSQL中有一张表,其架构如下所示: CREATE TABLE "foo_table" ( "id" serial NOT NULL PRIMARY KEY, "permalink" varchar(200) NOT NULL, "text" varchar(512) NOT NULL, "timestamp" timestamp with time zone NOT NULL ) 现在,我想通过更改表来使永久链接在整个表中唯一。有人可以帮我吗? TIA

7
在postgres中选择字段的数据类型
如何从Postgres中的表中获取特定字段的数据类型?例如,我有下表,student_details(stu_id整数,stu_name varchar(30),joind_date时间戳); 在使用字段名称/或任何其他方式时,我需要获取特定字段的数据类型。有没有可能?
165 postgresql 

2
在Rails和PostgreSQL中完全忽略时区
我正在Rails和Postgres中处理日期和时间,并遇到了这个问题: 该数据库位于UTC中。 用户在Rails应用程序中设置选择的时区,但这仅在获取用户本地时间以比较时间时才使用。 用户存储时间,例如2012年3月17日晚上7点。我不希望时区转换或时区被存储。我只希望保存该日期和时间。这样,如果用户更改了时区,它将仍然显示2012年3月17日晚上7点。 我仅使用用户指定的时区来获取用户本地时区中当前时间“之前”或“之后”的记录。 我目前正在使用“没有时区的时间戳”,但是当我检索记录时,rails(?)会将它们转换为应用程序中的时区,这是我所不希望的。 Appointment.first.time => Fri, 02 Mar 2012 19:00:00 UTC +00:00 因为数据库中的记录似乎是UTC格式的,所以我的建议是获取当前时间,并使用'Date.strptime(str,“%m /%d /%Y”)'删除时区,然后执行查询: .where("time >= ?", date_start) 似乎必须有一种更简便的方法来忽略周围的时区。有任何想法吗?

3
如何添加“在删除级联”约束?
在PostgreSQL 8中,是否可以ON DELETE CASCADES在下表中添加两个外键而不删除后者? # \d scores Table "public.scores" Column | Type | Modifiers ---------+-----------------------+----------- id | character varying(32) | gid | integer | money | integer | not null quit | boolean | last_ip | inet | Foreign-key constraints: "scores_gid_fkey" FOREIGN KEY (gid) REFERENCES games(gid) "scores_id_fkey" FOREIGN KEY (id) …

4
SQL,Postgres OID,它们是什么,为什么有用?
我正在查看一些PostgreSQL表的创建,但我偶然发现了这一点: CREATE TABLE ( ... ) WITH ( OIDS = FALSE ); 我阅读了postgres提供的文档,并且了解了OOP中的对象标识符的概念,但仍然不了解, 为什么这样的标识符在数据库中会有用? 使查询更短? 什么时候应该使用?


15
PostgreSQL-由于与数据库的某些自动连接而无法删除数据库
每当我尝试删除数据库时,我都会得到: ERROR: database "pilot" is being accessed by other users DETAIL: There is 1 other session using the database. 当我使用时: SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE pg_stat_activity.datname = 'TARGET_DB'; 我终止了与该数据库的连接,但是如果在此之后尝试删除数据库,则有人会自动连接到该数据库并给出此错误。该怎么办?除了我之外,没有人使用这个数据库。



3
PostgreSQL列名称区分大小写吗?
我persons在另一个列名称为的团队的Postgres中有一个db表说"first_Name"。现在我正试图使用​​PG命令来查询此列名上的该表。 select * from persons where first_Name="xyz"; 它只是返回 错误:列“ first_Name”不存在 不确定我是否在做愚蠢的事情,或者是否有解决此问题的解决方法?

9
如何找到Postgres / PostgreSQL表及其索引的磁盘大小
我是从Oracle来的Pos​​tgres,正在寻找一种方法来查找表和索引的大小bytes/MB/GB/etc,甚至更好的是所有表的大小。在Oracle中,我有一个讨厌的长查询,它查看了user_lobs和user_segments并给出了答案。 我假设在Postgres中可以在information_schema表中使用某些东西,但是我看不到哪里。
156 postgresql 

7
在PostgreSQL中按月和年分组查询结果
我在Postgres服务器上有以下数据库表: id date Product Sales 1245 01/04/2013 Toys 1000 1245 01/04/2013 Toys 2000 1231 01/02/2013 Bicycle 50000 456461 01/01/2014 Bananas 4546 我想创建一个查询,给出SUM了的Sales按月份和年份如下列并对结果进行分组: Apr 2013 3000 Toys Feb 2013 50000 Bicycle Jan 2014 4546 Bananas 有没有简单的方法可以做到这一点?
156 sql  postgresql 

4
PostgreSQL通配符LIKE,表示任意单词列表
我有一个约25个单词的简单清单。我在PostgreSQL中有一个varchar字段,假设该列表为['foo', 'bar', 'baz']。我想在表中找到任何包含这些单词的行。这会起作用,但是我想要更优雅的东西。 select * from table where (lower(value) like '%foo%' or lower(value) like '%bar%' or lower(value) like '%baz%')
156 sql  postgresql 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.