Tag: postgresql

PostgreSQL:select时间戳记为空的地方

我有一个查询,如下所示: SELECT * FROM table WHERE timestamp = NULL; 时间戳列是时区数据types的时间戳( 此表中的第二种types)。 这是在PostgreSQL 8.4中。 我想要完成的是只select没有插入时间戳的行。 当我查看pgAdmin中的数据时,该字段为空,并且不显示任何值。 我已经尝试了timestamp = NULL , 'EPOCH' (你会认为这将是默认值),一个有效的时间戳zeros( 0000-00-00 00:00:00-00 ,这将导致超出范围错误),根据文档( January 1, 4713 BC )和一个空白string( '' ,只是得到一个数据types不匹配错误)可能的最低date。 也似乎没有is_timestamp()函数,我可以用来检查结果是否不是一个有效的时间戳。 所以,问题是,我可以检查的空白区域有什么价值? 谢谢。 编辑:该字段没有默认值。

Postgresql:有条件的唯一约束

我想添加一个约束,强制只在一个表的一部分列的唯一性。 ALTER TABLE stop ADD CONSTRAINT myc UNIQUE (col_a) WHERE (col_b is null); 上面的WHERE部分是一厢情愿的想法。 任何方式这样做? 还是应该回到关系图板?

如何检查postgres的用户名和密码?

我的一个朋友做了这个configuration到我的Mac。 但是我不知道他select的用户名和密码。

Postgresql – 由于某些自动连接到数据库而无法删除数据库

每当我尝试删除数据库,我得到: ERROR: database "pilot" is being accessed by other users DETAIL: There is 1 other session using the database. 当II使用时: SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE pg_stat_activity.datname = 'TARGET_DB'; 我似乎从该数据库中删除连接。 但是,如果我尝试删除数据库后,不知何故有人自动连接到该数据库,并给出这个错误。 有什么可以做的呢? 没有人使用这个数据库,除了我。

Postgres不在数组中

我正在使用Postgres的本地数组types,并试图查找ID不在数组收件人ID中的logging。 我可以find他们在哪里: SELECT COUNT(*) FROM "messages" WHERE (3 = ANY (recipient_ids)) 但是这不起作用: SELECT COUNT(*) FROM "messages" WHERE (3 != ANY (recipient_ids)) SELECT COUNT(*) FROM "messages" WHERE (3 = NOT ANY (recipient_ids)) 什么是正确的方式来testing这种情况?

postgresql外键语法

我有两个表,你会看到我的posgresql代码下面。 第一个表的学生有两列,一个是student_name,另一个是主键student_id。 在我的第二个名为tests的表中,它有4列,一个用于subject_id,一个用于subject_name,然后一个用于学生最高评分最高的学生。 我试图让我的学生表中的student_id指向highestStudent_id。 这是我下面的代码,不知道如果语法是正确的: CREATE TABLE students ( student_id SERIAL PRIMARY KEY, player_name TEXT); CREATE TABLE tests ( subject_id SERIAL, subject_name, highestStudent_id SERIAL REFERENCES students); highestStudent_id SERIAL REFERENCES students是否正确地使用了最highestStudent_id SERIAL REFERENCES students ? 因为我看过另一个像highestStudent_id REFERENCES students(student_id)) 请问在postgresql中创build外键的正确方法是什么?

rake db:用postgresql创build编码错误

我正在将一个现有的rails项目导入到我的新的arch linux系统中,我已经正确安装了所有的gem和postgresql,但是在运行时遇到一些问题: rake db:create 我得到以下错误 PGError: ERROR: new encoding (UTF8) is incompatible with the encoding of the template database (SQL_ASCII) HINT: Use the same encoding as in the template database, or use template0 as template. : CREATE DATABASE "System_test" ENCODING = 'unicode' 我用正确的编码方式手动创build了数据库,迁移效果很好,但我可以运行 rake db:test:clone 命令,因为它试图创build一个数据库,我不假设手动创build数据库。 那么,有人知道解决这个问题? 问候 编辑:这是我的database.yml development: adapter: postgresql encoding: unicode database: […]

PostgreSQL:默认约束名称

在PostgreSQL中创build表格时,如果没有提供,将会分配默认约束名称: CREATE TABLE example ( a integer, b integer, UNIQUE (a, b) ); 但是使用ALTER TABLE添加一个约束似乎是一个名字是必须的: ALTER TABLE example ADD CONSTRAINT my_explicit_constraint_name UNIQUE (a, b); 这导致了我所处理的项目中的一些命名不一致,并提示以下问题: 是否有一个简单的方法来添加一个约束到一个现有的表,如果在表创build期间添加它会收到的名字? 如果不是,应该避免默认名称,以防止不一致?

如何findpg_configpath

在这里完成新手,试图设置Django与ProstgreSQL合作。 我正在使用mac osx 10.6.8。 我也安装了PostgreSQL 9.3 当我在terminal中运行pip install psycopg2 ,出现以下错误 Downloading/unpacking psycopg2 Downloading psycopg2-2.5.2.tar.gz (685kB): 685kB downloaded Running setup.py (path:/private/var/folders/A9/A99cs6x0FNusPejCVkYNTE+++TI/-Tmp-/pip_build_bengorman/psycopg2/setup.py) egg_info for package psycopg2 Error: pg_config executable not found. Please add the directory containing pg_config to the PATH or specify the full executable path with the option: python setup.py build_ext –pg-config /path/to/pg_config build … or […]

MySQL,PostgreSQL和SQLite中数据库列types的比较? (跨映射)

我试图find一些方法来关联最常用的数据库中的列types : MySQL , PostgreSQL和SQLite 。 这是我到目前为止,但恐怕没有完成,我需要一些有经验的人来帮助我完成任何缺失的types。 MySQL PostgreSQL SQLite TINYINT SMALLINT INTEGER SMALLINT SMALLINT MEDIUMINT INTEGER BIGINT BIGINT BIT BIT INTEGER _______________________________________________________ TINYINT UNSIGNED SMALLINT INTEGER SMALLINT UNSIGNED INTEGER MEDIUMINT UNSIGNED INTEGER INT UNSIGNED BIGINT BIGINT UNSIGNED NUMERIC(20) _______________________________________________________ DOUBLE DOUBLE PRECISION REAL FLOAT REAL REAL DECIMAL DECIMAL REAL NUMERIC NUMERIC REAL _______________________________________________________ BOOLEAN […]