Maison > base de données > Oracle > Découvrez comment utiliser Oracle pour interroger des tables temporaires

Découvrez comment utiliser Oracle pour interroger des tables temporaires

PHPz
Libérer: 2023-04-18 09:20:23
original
1181 Les gens l'ont consulté

Dans la base de données Oracle, une table temporaire est une table temporaire utilisée pour stocker des données temporaires. Contrairement aux tables ordinaires, elles sont automatiquement supprimées à la fin de la session. Les tables temporaires peuvent utiliser SELECT, INSERT, UPDATE, DELETE et d'autres opérations comme les tables ordinaires, mais leurs données ne sont visibles que par la session en cours et ne sont pas accessibles dans d'autres sessions. Dans cet article, nous explorerons comment interroger des tables temporaires à l'aide d'Oracle.

Création d'une table temporaire

Dans la base de données Oracle, vous pouvez créer une table temporaire à l'aide de l'instruction CREATE GLOBAL TEMPORARY TABLE ou CREATE TEMPORARY TABLE. Les deux instructions sont très similaires, la principale différence est que CREATE GLOBAL TEMPORARY TABLE crée une table temporaire globale et CREATE TEMPORARY TABLE crée une table temporaire de session. Voici un exemple de création d'une table temporaire de session :

CREATE GLOBAL TEMPORARY TABLE temp_table (
  id NUMBER(10),
  name VARCHAR2(30)
) ON COMMIT PRESERVE ROWS;
Copier après la connexion

Cette instruction créera une table temporaire nommée temp_table, contenant deux colonnes, id et name, et les données seront supprimées à la fin de la session. L'option ON COMMIT PRESERVE ROWS spécifie que les données seront conservées après la soumission, afin que la table temporaire puisse être utilisée plusieurs fois au cours de la session.

Interroger une table temporaire

L'interrogation d'une table temporaire est très similaire à l'interrogation d'une table normale. Voici un exemple d'interrogation d'une table temporaire :

SELECT * FROM temp_table;
Copier après la connexion

Cela renverra toutes les lignes et colonnes de temp_table.

Si vous souhaitez partager des données temporaires entre plusieurs sessions, vous pouvez utiliser l'instruction CREATE GLOBAL TEMPORARY TABLE pour créer une table temporaire globale. Voici un exemple d'utilisation d'une table temporaire globale :

CREATE GLOBAL TEMPORARY TABLE temp_table (
  id NUMBER(10),
  name VARCHAR2(30)
) ON COMMIT PRESERVE ROWS;

-- 在会话1中插入数据
INSERT INTO temp_table VALUES (1, 'Alice');
COMMIT;

-- 在会话2中查询数据
SELECT * FROM temp_table;

-- 在会话1中插入更多的数据
INSERT INTO temp_table VALUES (2, 'Bob');
COMMIT;

-- 再次在会话2中查询数据
SELECT * FROM temp_table;
Copier après la connexion

Dans cet exemple, la table temporaire globale temp_table est créée dans la session 1 puis certaines données sont insérées dans la session 1. La session 2 interroge toutes les lignes et colonnes de temp_table via l'instruction SELECT. Au cours de cette requête, la session 1 continue d'insérer des données dans temp_table et conserve les données après soumission. Enfin, lorsque j'interroge à nouveau temp_table lors de la session 2, je ne vois que les lignes précédemment insérées, mais pas les dernières.

Dans la base de données Oracle, la syntaxe d'interrogation des tables temporaires est la même que celle de l'interrogation des tables ordinaires. Le principal avantage des tables temporaires est qu'elles sont automatiquement supprimées après la fin de la session, ce qui permet d'éviter le travail de nettoyage manuel lorsque vous travaillez avec des données temporaires.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal