是否有 PDOStatement "executed" 标志?

Is there a PDOStatement "executed" flag?

有没有像 PDOStatement (PDOStatement) 的 "executed" 标志这样的东西来查看语句是否已执行(通过调用 PDOStatement::execute())?还是我被迫设置自己的标志?

根据文档判断,似乎没有标志(唯一记录的 属性 是 $queryString)- 但我想在手动执行之前我仍然会询问。主要是为了区分准备好的语句和已经执行的语句。

不,没有。您可以重用 PDOStatement,这是 PDO:prepare.

支持的用例

准备好一条语句后,您可以多次执行它,所以也许构建者认为这样的标志没有用,而且我个人对您的用例也有点好奇。

但是有可能:使用PDOStatement::errorCode,可以得到最后一条语句的错误码。该函数在语句未执行时将return一个空字符串,并在语句执行后填充错误代码(或00000表示没有错误)。