# プリペアドステートメントメントの制限
+ プリペアドステートメントはネストできません
  + プリペアドステートメントには **`PREPARE`**、**`EXECUTE`**、**`DEALLOCATE`** を含んではいけません
+ 複数のステートメントではなく、単一のステートメントのみを用意できます
+ 動的カーソル宣言を含むステートメントを用意することはできません
  + これは、`TiDB` がカーソルを作成するときにプリペアドステートメント内のカーソル構文/プリペアドステートメントをチェックするためです

------------------------------------------------------------
TiDB では、すべての種類の SQL ステートメントを用意できるわけではありません。

プリペアドステートメントはネストできません。

1 回の prepare で複数のステートメントを用意することはできません。

動的カーソル宣言を含むステートメントを作成することはできません。これは、tiDB が prepare を使用するときにカーソル構文をチェックするため、プリペアドステートメントでは静的カーソルしか準備できないためです。

SQL 標準で要求されているように診断ステートメントを作成することはできません。診断ステートメントには以下が含まれます。
```
SHOW ERRORS
SHOW WARNINGS
```

プリペアドステートメントで使用できる SQL ステートメントの完全なリストについては、`https://dev.mysql.com/doc/mysql/en/sql-syntax-prepared-statements.html` を参照する。

