Dépannage de l'instruction INSERT SELECT dans Oracle 11G
Lorsque vous tentez d'exécuter une instruction INSERT SELECT dans Oracle 11G, vous pouvez rencontrer un message « ORA- 00936 : erreur "expression manquante". Cette erreur indique généralement un problème avec la syntaxe de l'instruction.
Pour résoudre ce problème, inspectez attentivement l'instruction. Une erreur courante consiste à inclure le mot clé VALUES dans l'instruction INSERT SELECT. Dans Oracle, le mot-clé VALUES n'est utilisé que lors de l'insertion de valeurs explicites dans une table, pas lors de la sélection de valeurs dans une autre table.
La syntaxe correcte pour une instruction INSERT SELECT est :
INSERT INTO table_name (column_list) SELECT column_list FROM source_table;
Par conséquent, l'instruction doit être modifiée comme suit :
INSERT INTO table1 (col1, col2) SELECT t1.col1, t2.col2 FROM oldtable1 t1, oldtable2 t2;
Cette syntaxe corrigée doit exécuter avec succès la jointure cartésienne entre oldtable1 et oldtable2 et insérer le résultat lignes dans le tableau 1.
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!