### 13.6.8 条件处理限制

[](<>)[](<>)

[`信号`](signal.html),[`重新信号`](resignal.html)， 和[`得到诊断`](get-diagnostics.html)不允许作为准备好的陈述。例如，此语句无效：

```
PREPARE stmt1 FROM 'SIGNAL SQLSTATE "02000"';
```

`SQLSTATE`班级价值观`'04'`没有特殊处理。它们的处理方式与其他异常相同。

在标准 SQL 中，第一个条件与`SQLSTATE`为上一个 SQL 语句返回的值。在 MySQL 中，这是不能保证的，所以要得到主要错误，你不能这样做：

```
GET DIAGNOSTICS CONDITION 1 @errno = MYSQL_ERRNO;
```

相反，请执行以下操作：

```
GET DIAGNOSTICS @cno = NUMBER;
GET DIAGNOSTICS CONDITION @cno @errno = MYSQL_ERRNO;
```
