Erreur dans l’instruction SQL : AnalysisException: Table or view not foundError in SQL statement: AnalysisException: Table or view not found

ProblèmeProblem

Lorsque vous essayez d’interroger une table ou une vue, vous recevez le message d’erreur suivant :When you try to query a table or view, you get this error:

AnalysisException:Table or view not found when trying to query a global temp view

CauseCause

En général, vous créez temp des affichages globaux afin qu’ils soient accessibles à partir de différentes sessions et restent actifs jusqu’à la fin de l’application.You typically create global temp views so they can be accessed from different sessions and kept alive until the application ends. Vous pouvez créer une temp vue globale à l’aide de l’instruction suivante :You can create a global temp view with the following statement:

df.createOrReplaceGlobalTempView("<global-view-name>")

Ici, df est le DataFrame .Here, df is the DataFrame. Une autre façon de créer la vue consiste à :Another way to create the view is with:

CREATE GLOBAL TEMP VIEW <global-view-name>

Toutes les vues temporaires globales sont liées à une base de données temporaire système nommée global_temp .All global temporary views are tied to a system temporary database named global_temp. Si vous interrogez la table ou la vue globale sans mentionner explicitement la global_temp base de données, l’erreur se produit.If you query the global table or view without explicitly mentioning the global_temp database, then the error occurs.

SolutionSolution

Utilisez toujours le nom de la table qualifiée avec la global_temp base de données, afin de pouvoir interroger correctement les données d’affichage global.Always use the qualified table name with the global_temp database, so that you can query the global view data successfully.

Par exemple :For example:

%sql
select * from global_temp.<global-view-name>;