1
我有我的命令行运行下面的(工作)代码.sql文件返回值:如何从使用匿名DO
DO $$
DECLARE first_ext INTEGER;
last_ext INTEGER;
BEGIN
first_ext:=100;
last_ext:=150;
INSERT INTO widgets (username)
SELECT i
FROM generate_series(first_ext, last_ext) AS t(i);
INSERT INTO widget2
SELECT generate_series(first_ext, last_ext), 'sometext',
generate_series(first_ext, last_ext);
END $$;
我想现在要做的计数在两张桌子上,以确保我已正确创建数据。
但我有一个很难返回值。这是我的尝试:
RETURNS rec_count AS
DO $$
DECLARE first_ext INTEGER;
last_ext INTEGER;
BEGIN
first_ext:=100;
last_ext:=150;
INSERT INTO widgets (username)
SELECT i
FROM generate_series(first_ext, last_ext) AS t(i);
INSERT INTO widget2
SELECT generate_series(first_ext, last_ext), 'sometext',
generate_series(first_ext, last_ext);
SELECT COUNT(*) FROM widget2 INTO rec_count;
END $$;
但它失败,出现以下错误:
ERROR: syntax error at or near "RETURNS" LINE 1: RETURNS rec_count AS
我不想使之成为一个函数/存储过程这一点。
是否有任何其他方式做到这一点?