我想看看我的删除查询效果有多少行,所以我知道它是正确的。
这可以使用pgadmin吗?
答案 0 :(得分:1)
我不知道如何自动执行此操作,但您始终可以选择删除。
SELECT COUNT(*) FROM foo WHERE delete_me=true;
DELETE FROM foo WHERE delete_me=true;
答案 1 :(得分:1)
正如Andrew所说,在进行交互式管理时,您只需将DELETE
替换为SELECT COUNT(*)
。
如果您希望在程序中使用程序中的此信息(在执行DELETE之后),许多编程语言都会为此提供构造。例如,在PHP中它是pg_affected_rows,在.NET中它是ExecuteNonQuery的返回值。
答案 2 :(得分:1)
启动事务,删除然后回滚;
在psql中:
test1=> begin;
BEGIN
test1=> delete from test1 where test1_id = 1;
DELETE 2
test1=> rollback;
ROLLBACK
在pgAdmin中(在“输出窗格”的“历史记录”标签中):
-- Executing query:
begin;
Query returned successfully with no result in 16 ms.
-- Executing query:
delete from test1 where test1_id = 1;
Query returned successfully: 2 rows affected, 16 ms execution time.
-- Executing query:
rollback;
Query returned successfully with no result in 16 ms.
答案 3 :(得分:0)