0

我喜欢有多少种语言允许您在将表达式放入代码库之前在终端/shell/REPL 中测试表达式。有没有办法尝试 PostgreSQL 表达式——例如约束的逻辑表达式——而不必(a)将约束添加到数据库或(b)查询现有数据库?(我正在寻找最小的东西。)

4

2 回答 2

2

要在不更改架构的情况下测试架构更改,请在事务中执行:

begin;

alter table t add foreign key (osm) references s(i);

insert into t values (3,3);
ERROR:  insert or update on table "t" violates foreign key constraint "t_osm_fkey"
DETAIL:  Key (osm)=(3) is not present in table "s".

rollback;

如果您喜欢测试结果commit,那么请使用rollback

但如果它只是一个表达式,只需选择它:

select 1 > 2
select '2012-01-01' < current_date
于 2013-03-05T12:55:13.083 回答
0

正如Postgres 关于查询的文档中所述,以下是合法的 SQL 查询:

SELECT random();

只需替换您选择的表达方式即可。

于 2013-03-05T01:55:42.350 回答