Question requete sql sur des variables?

Plus d'informations
il y a 15 ans 3 mois #8276 par fabrice
Bonjour

Voici mon pb:
je veux automatiser des requetes que j'execute sur des tables paradox.
Pour cela j'utilise un script powershell (trouvé ici merci!!) qui crée une connection dsn.
Sur des requetes simples ca fonctionne trés bien
mais voila que le \"patron\" demande toujours plus et les requetes se complexifient.(plusieurs inner join, et sous requetes)
la même requete qui prends 2sec avec un utilitaire paradox a pris plus de 4h !! avec le script.
il semble que les connexions odbc supportent mal les requetes lourdes.
d'ou ma question: est-il possible d'executer une requete sur les variables par ex sur la variable $DataSetDemission dans le script ci dessous (j'imagine alors que le traitement serait plus rapide) :

$commande1 = New-Object system.data.odbc.odbccommand
$connection1 = New-Object \"System.data.odbc.odbcconnection\"
$commande1.connection = $connection1
$dsn1 = \"DSN=H2 central;DefaultDir=c:mypath;DriverId=538;FIL=Paradox 5.X;MaxBufferSize=2048;PageTimeout=5;\"

$connection1.connectionString = $dsn1
$connection1.open()

$commande1.CommandText =

\"SELECT * FROM demissio \"
$DataAdapter1 = new-object System.Data.odbc.odbcDataAdapter($commande1)
$DataSetDemission = new-object System.Data.DataSet
$DataAdapter1.Fill($DataSetDemission)

Merci de votre aide
Fabrice

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 3 mois #8280 par Laurent Dardenne
Salut,
fabrice écrit:

mais voila que le \"patron\" demande toujours plus

Certes, mais la technique ne peut pas plus qu'elle peut.
fabrice écrit:

et les requetes se complexifient.(plusieurs inner join, et sous requetes)

N'ayant pas le modèle de la base sous les yeux, on ne peut que te croire.
fabrice écrit:

la même requete qui prends 2sec avec un utilitaire paradox a pris plus de 4h !! avec le script.

Si c'est possible, de mon coté Paradox j'ai oublié, compare la requête de l'utilitaire avec la tienne.
Puisque c'est la même base, j'ai des doutes sur la mise en cause de PowerShell.
fabrice écrit:

il semble que les connexions odbc supportent mal les requetes lourdes.

Que ODBC ralentisse les traitements c'est normal, il y a une couche supplémentaire, mais pas dans cette proportion.
fabrice écrit:

d'ou ma question:

Question que je n'ai pas compris.
Tu veux dire que la mise en cache mémoire serait bénéfique ?

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 3 mois #8283 par fabrice
Réponse de fabrice sur le sujet Re:requete sql sur des variables?
salut
je vais tenter d'eclaircir mon idée!!
mais avant:
fabrice écrit:
la même requete qui prends 2sec avec un utilitaire paradox a pris plus de 4h !! avec le script.
laurent répond
Si c'est possible, de mon coté Paradox j'ai oublié, compare la requête de l'utilitaire avec la tienne.

Puisque c'est la même base, j'ai des doutes sur la mise en cause de PowerShell.


ma requete est identique, j'ai seulement du rajouter des parentheses pour adapter la syntaxe. mais c'est peut etre ca le problème.

mon idée:
j'ai vu que certaines variables (notamment issues de wmi) ont une option query qui permet d'utiliser la syntaxe sql pour filtrer leur contenu
je me demandais si ds le system.data il n'y a pas une classe qui possède cette option.

mais je sens que ce n'est pas la bonne direction.

je vais d'abord chercher du coté de la syntaxe sql attendue par le connecteur odbc

Fabrice

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 3 mois #8284 par Laurent Dardenne
fabrice écrit:

ma requete est identique

oups!
Au temps pour moi :whistle:
fabrice écrit:

je vais d'abord chercher du coté de la syntaxe sql attendue par le connecteur odbc

Tu peux consulter ce site :
www.connectionstrings.com/paradox

Vérifie côté ODBC si tu n'as pas le mode trace d'activé.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 14 ans 11 mois #9452 par fabrice
Réponse de fabrice sur le sujet Re:requete sql sur des variables?
Pour ceux que ca interesse:
le driver odbc pour paradox supporte trés mal les requetes lourdes.
Il semble que des outils comme Buisness Object qui utilisent ces drivers ont les mêmes problèmes de lenteur.

Fabrice

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.043 secondes
Propulsé par Kunena