ホームページ >データベース >mysql チュートリアル >MySQL プロシージャは SQL Server と同様にテーブル変数を使用できますか?

MySQL プロシージャは SQL Server と同様にテーブル変数を使用できますか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-16 10:24:12502ブラウズ

Can MySQL Procedures Use Table Variables Like SQL Server?

MySQL でのテーブル変数の作成

Q: SQL Server のテーブル変数と同様のテーブル変数を MySQL で作成して、特定のテーブル行を内部に格納するプロシージャ?

A: いいえ、MySQL はテーブル変数をサポートしません。

代替解決策: 一時テーブルを使用する

MySQL にはテーブル変数がありませんが、代わりに一時テーブルを利用できます。一時テーブルは、テーブル変数と同様の特性を共有します。これらは、プロシージャ内のデータに一時的なストレージ領域を提供します。

MySQL プロシージャで一時テーブルを作成して利用する例を次に示します。

CREATE PROCEDURE my_proc () 
BEGIN 

  CREATE TEMPORARY TABLE TempTable (myid int, myfield varchar(100)); 
  INSERT INTO TempTable SELECT tblid, tblfield FROM Table1; 

  /* Perform additional operations... */ 
END; 

MySQL では、一時テーブルは一時的なキーワード。これらは現在の接続専用であり、接続が閉じられると自動的に削除されます。この分離により、複数の接続が競合することなく同一の一時テーブル名を使用できるようになります。

以上がMySQL プロシージャは SQL Server と同様にテーブル変数を使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。