erreur requete sql

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

erreur requete sql

KatiaC
Bonjour, nous essyons de faire une jointure entre deux tables avec une colonne commune. Nous avons utilise la commande suivante: CREATE TABLE ETtotcumul AS SELECT a.*, b.ETtot, b.PbruteStot FROM Parcelles_DERNIER_voieadj_rural_0_50_region a, ETtotcumulOrbisgis b WHERE a.NUMPAR=b.numpar; et nous repond ainsi : lancer linstruction {0}/{1} : CREATE TABLE ETtotcumul AS SELECT a.*, b.ETtot, b.PbruteStot FROM Parcelles_DERNIER_voieadj_rural_0_50_region a, ETtotcumulOrbisgis b WHERE a.NUMPAR=b.numpar; ERROR [Thread-59] (RunnableBackgroundJob.java:73) - Erreur fatale lors du processus Exécuter le script org.gdms.data.NoSuchTableException: The table ETtotcumulOrbisgis does not exist! at org.gdms.source.DefaultSourceManager.getMainNameFor(DefaultSourceManager.java:818) at org.gdms.source.DefaultSourceManager.getDataSource(DefaultSourceManager.java:709) at org.gdms.data.DataSourceFactory.getDataSource(DataSourceFactory.java:518) at org.gdms.data.DataSourceFactory.getDataSource(DataSourceFactory.java:509) at org.gdms.data.DataSourceFactory.getDataSource(DataSourceFactory.java:493) at org.gdms.sql.engine.step.physicalJoin.PhysicalJoinOptimStep$$anonfun$optimizeJoins$1$$anonfun$3.apply(PhysicalJoinOptimStep.scala:122) at org.gdms.sql.engine.step.physicalJoin.PhysicalJoinOptimStep$$anonfun$optimizeJoins$1$$anonfun$3.apply(PhysicalJoinOptimStep.scala:121) at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:233) at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:233) at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:59) at scala.collection.immutable.List.foreach(List.scala:76) at scala.collection.TraversableLike$class.map(TraversableLike.scala:233) at scala.collection.immutable.List.map(List.scala:76) at org.gdms.sql.engine.step.physicalJoin.PhysicalJoinOptimStep$$anonfun$optimizeJoins$1.apply(PhysicalJoinOptimStep.scala:121) at org.gdms.sql.engine.step.physicalJoin.PhysicalJoinOptimStep$$anonfun$optimizeJoins$1.apply(PhysicalJoinOptimStep.scala:87) at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:59) at scala.collection.immutable.List.foreach(List.scala:76) at org.gdms.sql.engine.step.physicalJoin.PhysicalJoinOptimStep$.optimizeJoins(PhysicalJoinOptimStep.scala:87) at org.gdms.sql.engine.step.physicalJoin.PhysicalJoinOptimStep$.doOperation(PhysicalJoinOptimStep.scala:63) at org.gdms.sql.engine.step.physicalJoin.PhysicalJoinOptimStep$.doOperation(PhysicalJoinOptimStep.scala:52) at org.gdms.sql.engine.AbstractEngineStep.$greater$eq$colon(EngineStep.scala:62) at org.gdms.sql.engine.EngineStep$$anon$1.doOperation(EngineStep.scala:46) at org.gdms.sql.engine.EngineStep$class.$greater$eq$colon(EngineStep.scala:41) at org.gdms.sql.engine.EngineStep$$anon$1.$greater$eq$colon(EngineStep.scala:44) at org.gdms.sql.engine.EngineStep$$anon$1.doOperation(EngineStep.scala:46) at org.gdms.sql.engine.EngineStep$class.$greater$eq$colon(EngineStep.scala:41) at org.gdms.sql.engine.EngineStep$$anon$1.$greater$eq$colon(EngineStep.scala:44) at org.gdms.sql.engine.SQLStatement.prepare(SQLStatement.scala:160) at org.orbisgis.view.sqlconsole.actions.ExecuteScriptProcess.run(ExecuteScriptProcess.java:118) at org.orbisgis.view.background.Job.run(Job.java:74) at org.orbisgis.view.background.RunnableBackgroundJob.run(RunnableBackgroundJob.java:71) at java.lang.Thread.run(Unknown Source) Les deux tables utilisees dans la requete ont bien ete chargees dans le geocatalogue et les attributs sont corrects... Voyez-vous ou est notre erreur? Merci de votre aide. Katia et Miguel PS: desolee pour les accents, mais je suis sur un clavier qwerty!!!!
Reply | Threaded
Open this post in threaded view
|

Re: erreur requete sql

KatiaC
Une info supplementaire: les deux fichiers n'ont pas le meme nombre de lignes. La table b est un sous ensemble de la table a...
Reply | Threaded
Open this post in threaded view
|

Re: erreur requete sql

Gwendall Petit
Administrator
Bonjour Katia,

Selon moi tu as la réponse dans le message d'erreur :
Erreur fatale lors du processus Exécuter le script org.gdms.data.NoSuchTableException: The table ETtotcumulOrbisgis does not exist!
Il faut donc que tu t'assures bien que ta table ETtotcumulOrbisgis exsite avant de lancer ton script (qui semble correct d'un point de vue SQL).

Cordialement,

Gwendall

PS : si possible, essaye de faire des retours à la ligne que tu fais des messages, car c'est un peu dur de lire ton texte + ton code + les messages d'errreurs
Reply | Threaded
Open this post in threaded view
|

Re: erreur requete sql

KatiaC
Desolee pour les retours dans le message, mais ils y sont a l ecran. comme je l indiquais dans le message, nous avons bien verifie que la table existait et nous avons meme ouvert les attributs qui sont corrects. En revanche, les deux tables ne sont pas de la meme taille. est-ce que ca peut expliquer l erreur? pour preuve, voici les deux fichiers en question dans orbisgis
Reply | Threaded
Open this post in threaded view
|

Re: erreur requete sql

Gwendall Petit
Administrator
Katia ....

Regardes bien le nom de ta couche et tu verras ton erreur.

C'est là qu'on voit l'intérêt de la complétion automatique.

Cordialement,

Gwendall