Maison > base de données > tutoriel mysql > Comment utiliser correctement INSERT SELECT dans Oracle 11g pour éviter ORA-00936 ?

Comment utiliser correctement INSERT SELECT dans Oracle 11g pour éviter ORA-00936 ?

DDD
Libérer: 2024-12-23 20:12:10
original
957 Les gens l'ont consulté

How to Correctly Use INSERT SELECT in Oracle 11g to Avoid ORA-00936?

Insertion de données via une requête SELECT dans Oracle 11G

Dans Oracle 11G, l'instruction INSERT SELECT permet un transfert efficace de données d'une table à une autre à l'aide d'une sous-requête. Cependant, les utilisateurs peuvent rencontrer des erreurs inattendues si leur syntaxe n'est pas correcte.

Requête utilisateur :

Un utilisateur a tenté d'insérer les résultats d'une sous-requête dans une nouvelle table en utilisant la déclaration suivante :

insert into table1 (col1, col2) values (select t1.col1, t2.col2 from oldtable1 t1, oldtable2 t2);
Copier après la connexion

Cependant, l'utilisateur a rencontré le problème suivant erreur :

SQL Error: ORA-00936: missing expression
Copier après la connexion

Solution :

La syntaxe fournie est incorrecte. L'instruction INSERT SELECT dans Oracle ne nécessite pas le mot clé VALUES, qui est couramment utilisé dans d'autres dialectes SQL. La syntaxe correcte doit être :

insert into table1 (col1, col2)
select t1.col1, t2.col2
from oldtable1 t1, oldtable2 t2
Copier après la connexion

En d'autres termes, supprimez simplement le mot-clé VALUES du début de l'instruction. Cela permettra à Oracle d'exécuter correctement la requête INSERT SELECT, en insérant les résultats de la sous-requête dans la table1.

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