M4E

Précédent   M4E > Discussions > HORS SUJET / OFF TOPIC

HORS SUJET / OFF TOPIC Dans cette section vous pouvez parler de n'importe quoi non-relié au monde de la moto. In this section you can discuss anything that's not motorcycle related.

Réponse
 
LinkBack Outils de la discussion Modes d'affichage
Vieux 13/07/2009, 19h38   #1 (permalink)
Stunter
 
Date d'inscription: juillet 2007
Localisation: Sherbrooke
Messages: 434
Pouvoir de réputation: 3
Reputation: 48 Gang-Tsou is on a distinguished road

Moto: Suzuki Katana 750 2006
 
Question Aide en SQL (ACCESS client)

A tous les experts en SQL (ACCESS client)

J'ai besoin de votre aide pour faire :

une liste du nombre de lignes dans chaque tables de la base de données.
Je ne peux spécifier le nom de tables.

Je me doute fort qu'utiliser un DO While EOF aiderait mais c'est pas mal tout

Donc de faire un group by sur chaque tables ou j'ai le total des lignes dans la table
Gang-Tsou est connecté maintenant   Réponse avec citation
Vieux 14/07/2009, 11h34   #2 (permalink)
Stunter
 
Avatar de Boumxyz
 
Date d'inscription: février 2009
Localisation: Mont-Saint-Hilaire
Messages: 361
Pouvoir de réputation: 1
Reputation: 139 Boumxyz will become famous soon enoughBoumxyz will become famous soon enough

Moto: Kawasaki Vulcan 900 Custom
 
Par défaut

Besoin de contexte SVP. Parce que vite de même tu dois itérer sur toute les tables et faire ceci.

select count(1 ou *) from Nomtable

Beaucoup plus rapide que GROUP BY.

Ne pas mettre de group by si non nécessaire (REMARQUE QUE C'EST ACCESS ET RÉAGIT TRÈS WEIRD COMPARÉ À SQL SERVER QUI LUI DIT QU'UN GROUP BY = +LENT QU'UN SIMPLE COUNT(1).


Si tu utiliser ADO pour ouvrir ta connection tu peux obtenir le schéma (et donc le nom des tables) et à partir de ce résultat, tu peux faire tes select pour obtenir le nombre de ligne. C'est pour ça que je te demande le contexte.
Boumxyz est déconnecté   Réponse avec citation
Vieux 14/07/2009, 11h52   #3 (permalink)
Stunter
 
Avatar de Rancid
 
Date d'inscription: juin 2008
Localisation: Laval
Messages: 223
Pouvoir de réputation: 2
Reputation: 29 Rancid is on a distinguished road

Moto: GS500 '04
 
Par défaut

Ceci devrait t'aider:

How do I get a list of Access tables and their row counts?

En gros, voici ta requête:

Code:
 
SELECT 
     Name, 
     DCount("*",[MSysObjects].[Name]) as RowCount
FROM 
    MSysObjects 
WHERE 
    (Left([Name],1)<>"~") 
    AND (Left([Name],4) <> "MSys") 
    AND ([Type] In (1, 4, 6)) 
ORDER BY 
     Name

Dernière modification par Rancid ; 14/07/2009 à 11h57
Rancid est déconnecté   Réponse avec citation
Vieux 14/07/2009, 17h16   #4 (permalink)
Stunter
 
Date d'inscription: juillet 2007
Localisation: Sherbrooke
Messages: 434
Pouvoir de réputation: 3
Reputation: 48 Gang-Tsou is on a distinguished road

Moto: Suzuki Katana 750 2006
 
Par défaut

Citation:
Envoyé par Boumxyz Voir le message
Besoin de contexte SVP. Parce que vite de même tu dois itérer sur toute les tables et faire ceci.

select count(1 ou *) from Nomtable

Beaucoup plus rapide que GROUP BY.

Ne pas mettre de group by si non nécessaire (REMARQUE QUE C'EST ACCESS ET RÉAGIT TRÈS WEIRD COMPARÉ À SQL SERVER QUI LUI DIT QU'UN GROUP BY = +LENT QU'UN SIMPLE COUNT(1).


Si tu utiliser ADO pour ouvrir ta connection tu peux obtenir le schéma (et donc le nom des tables) et à partir de ce résultat, tu peux faire tes select pour obtenir le nombre de ligne. C'est pour ça que je te demande le contexte.
Je voulais avoir l'info pour toutes les tables sans avoir à les spécifiers

La solution de Rancid fait excatement ce que je voulais.

Merci quand même!!
Gang-Tsou est connecté maintenant   Réponse avec citation
Vieux 14/07/2009, 17h18   #5 (permalink)
Stunter
 
Date d'inscription: juillet 2007
Localisation: Sherbrooke
Messages: 434
Pouvoir de réputation: 3
Reputation: 48 Gang-Tsou is on a distinguished road

Moto: Suzuki Katana 750 2006
 
Par défaut

Citation:
Envoyé par Rancid Voir le message
Ceci devrait t'aider:

How do I get a list of Access tables and their row counts?

En gros, voici ta requête:

Code:
 
SELECT 
     Name, 
     DCount("*",[MSysObjects].[Name]) as RowCount
FROM 
    MSysObjects 
WHERE 
    (Left([Name],1)<>"~") 
    AND (Left([Name],4) <> "MSys") 
    AND ([Type] In (1, 4, 6)) 
ORDER BY 
     Name
Excellent ca fait exactement ce que je voulais !
Gang-Tsou est connecté maintenant   Réponse avec citation
Vieux 14/07/2009, 17h21   #6 (permalink)
Stunter
 
Date d'inscription: juillet 2007
Localisation: Sherbrooke
Messages: 434
Pouvoir de réputation: 3
Reputation: 48 Gang-Tsou is on a distinguished road

Moto: Suzuki Katana 750 2006
 
Question

Citation:
Envoyé par Rancid Voir le message
Ceci devrait t'aider:

How do I get a list of Access tables and their row counts?

En gros, voici ta requête:

Code:
 
SELECT 
     Name, 
     DCount("*",[MSysObjects].[Name]) as RowCount
FROM 
    MSysObjects 
WHERE 
    (Left([Name],1)<>"~") 
    AND (Left([Name],4) <> "MSys") 
    AND ([Type] In (1, 4, 6)) 
ORDER BY 
     Name
Est-ce que quelqu'un peut m'expliquer en détail ces 3 lignes du WHERE

(Left([Name],1)<>"~")
AND (Left([Name],4) <> "MSys")
AND ([Type] In (1, 4, 6))

Merci!!
Gang-Tsou est connecté maintenant   Réponse avec citation
Vieux 14/07/2009, 20h23   #7 (permalink)
Stunter
 
Avatar de Rancid
 
Date d'inscription: juin 2008
Localisation: Laval
Messages: 223
Pouvoir de réputation: 2
Reputation: 29 Rancid is on a distinguished road

Moto: GS500 '04
 
Par défaut

Citation:
Envoyé par Gang-Tsou Voir le message
Est-ce que quelqu'un peut m'expliquer en détail ces 3 lignes du WHERE

(Left([Name],1)<>"~")
AND (Left([Name],4) <> "MSys")
AND ([Type] In (1, 4, 6))

Merci!!

selectionner seulement les objets dont:
le nom ne commence pas par "~" (objets système?)
ni par "MSys" (d'autres objets système?)
et qui sont de type 1 (table),4(linked table - Access) et 6(linked table - ODBC)

Dernière modification par Rancid ; 14/07/2009 à 20h30
Rancid est déconnecté   Réponse avec citation
Vieux 15/07/2009, 00h47   #8 (permalink)
Stunter
 
Date d'inscription: juillet 2007
Localisation: Sherbrooke
Messages: 434
Pouvoir de réputation: 3
Reputation: 48 Gang-Tsou is on a distinguished road

Moto: Suzuki Katana 750 2006
 
Par défaut

Citation:
Envoyé par Rancid Voir le message
selectionner seulement les objets dont:
le nom ne commence pas par "~" (objets système?)
ni par "MSys" (d'autres objets système?)
et qui sont de type 1 (table),4(linked table - Access) et 6(linked table - ODBC)

Merci encore Rancid!
Gang-Tsou est connecté maintenant   Réponse avec citation
Vieux 15/07/2009, 09h42   #9 (permalink)
Stunter
 
Avatar de Rancid
 
Date d'inscription: juin 2008
Localisation: Laval
Messages: 223
Pouvoir de réputation: 2
Reputation: 29 Rancid is on a distinguished road

Moto: GS500 '04
 
Par défaut

ca fait plaisir
Rancid est déconnecté   Réponse avec citation
Vieux 15/07/2009, 10h24   #10 (permalink)
Stunter
 
Avatar de Boumxyz
 
Date d'inscription: février 2009
Localisation: Mont-Saint-Hilaire
Messages: 361
Pouvoir de réputation: 1
Reputation: 139 Boumxyz will become famous soon enoughBoumxyz will become famous soon enough

Moto: Kawasaki Vulcan 900 Custom
 
Par défaut

Citation:
Envoyé par Gang-Tsou Voir le message
Je voulais avoir l'info pour toutes les tables sans avoir à les spécifiers

La solution de Rancid fait excatement ce que je voulais.

Merci quand même!!

Pas de trouble, je l'avais fait en VB, mais quand j'ai vu la requête de Rancid, j'ai pas ajouté ma solution. En fait, je déteste ACCESS, et préfère de loin SQL Server. Si tu m'avais demandé de faire ça en SQL Server, t'aurais eu la réponse en dedans de 30 secondes lol. Chapeau à Rancid.

Bonne journée.
Boumxyz est déconnecté   Réponse avec citation
Réponse

Liens sociaux

Outils de la discussion
Modes d'affichage

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

BB code is oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui



Discussions similaires
Discussion Auteur Forum Réponses Dernier message
allons nous avoir access a Mirabel? urymoto Supermotards, Hors-route (Off-road) 17 07/04/2009 11h58
Question MS Office (Particulièrement Access) pistolio HORS SUJET / OFF TOPIC 6 29/10/2008 10h38
Access Katharyna HORS SUJET / OFF TOPIC 14 19/02/2008 20h14
Wicked Access Samedi le 12 août marie-jo27 Activités / Activities 16 28/08/2006 16h11
Recherche Client **trouver merci HoneyD** Badpete Lucky Stripe 5 11/05/2006 22h30


Fuseau horaire GMT -4. Il est actuellement 14h26.


Édité par : vBulletin® version 3.8.1
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.1.0 Tous droits réservés.
Version française #15 par l'association vBulletin francophone
M4E