Question
requete sql sur des variables?
- fabrice
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 7
- Remerciements reçus 0
il y a 15 ans 3 mois #8276
par fabrice
requete sql sur des variables? a été créé 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
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.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 15 ans 3 mois #8280
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:requete sql sur des variables?
Salut,
fabrice écrit:
fabrice écrit:
fabrice écrit:
Puisque c'est la même base, j'ai des doutes sur la mise en cause de PowerShell.
fabrice écrit:
fabrice écrit:
Tu veux dire que la mise en cache mémoire serait bénéfique ?
fabrice écrit:
Certes, mais la technique ne peut pas plus qu'elle peut.mais voila que le \"patron\" demande toujours plus
fabrice écrit:
N'ayant pas le modèle de la base sous les yeux, on ne peut que te croire.et les requetes se complexifient.(plusieurs inner join, et sous requetes)
fabrice écrit:
Si c'est possible, de mon coté Paradox j'ai oublié, compare la requête de l'utilitaire avec la tienne.la même requete qui prends 2sec avec un utilitaire paradox a pris plus de 4h !! avec le script.
Puisque c'est la même base, j'ai des doutes sur la mise en cause de PowerShell.
fabrice écrit:
Que ODBC ralentisse les traitements c'est normal, il y a une couche supplémentaire, mais pas dans cette proportion.il semble que les connexions odbc supportent mal les requetes lourdes.
fabrice écrit:
Question que je n'ai pas compris.d'ou ma question:
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.
- fabrice
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 7
- Remerciements reçus 0
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
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.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 15 ans 3 mois #8284
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:requete sql sur des variables?
fabrice écrit:
Au temps pour moi
fabrice écrit:
www.connectionstrings.com/paradox
Vérifie côté ODBC si tu n'as pas le mode trace d'activé.
oups!ma requete est identique
Au temps pour moi
fabrice écrit:
Tu peux consulter ce site :je vais d'abord chercher du coté de la syntaxe sql attendue par le connecteur odbc
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.
- fabrice
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 7
- Remerciements reçus 0
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
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
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- requete sql sur des variables?