是否存在不返回记录集的有效语句?

问题描述

在问题Difference between a statement and a query in SQL中,the accepted answer说:

语句是数据库引擎识别为有效命令的任何文本。

查询是返回记录集(可能为空)的语句。

例如,我知道updateinsert在使用returning子句时可以返回重新设置,因此我猜在另一种情况下它们返回一个空的返回集。另外,根据postgres文档,update命令返回一个“命令标签”。但是我不知道该标签是否附加到一个空的记录集,或者它是否真的是返回的全部。

我的问题是:考虑到this list of SQL commands,我怎么知道哪个没有返回结果集(甚至没有一个空结果集)以及它们到底返回什么?

解决方法

普遍接受的版本是

  • 查询是可能返回也可能不返回行的select语句 但不会对数据库进行任何更改。
  • 语句是执行后成功执行的指令 数据库中的更改(提交后)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...