besoin d'infos pour requete SQL particuliere !

besoin d'infos pour requete SQL particuliere ! - ASP - Programmation

Marsh Posté le 02-02-2004 à 11:13:21    

J'aimerais savoir si il existe une requete afin de récupérer non pas le contenu d'une table mais justement de récupérer les noms de toutes les tables de la base de données SQL !
 
Merci

Reply

Marsh Posté le 02-02-2004 à 11:13:21   

Reply

Marsh Posté le 02-02-2004 à 11:16:40    

up

Reply

Marsh Posté le 02-02-2004 à 11:19:24    

Quel SGBD ?
 
Soit il existe une commande particulière ("SHOW tables" pour mysql), soit il faut passer une requête sur une table système du SGBD contenant la liste de toutes les tables.

Reply

Marsh Posté le 02-02-2004 à 11:26:22    

donc en gros, il faudrait que j'essaie de créer une table contenant toutes les autres ?

Reply

Marsh Posté le 02-02-2004 à 12:36:31    

pas du tout. il faut chercher une commande SQL système pour faire cela. QUEL SGBD ?

Reply

Marsh Posté le 02-02-2004 à 12:39:23    

Avec SQL Server, par exemple, c'est select * from sysobject where type = 'U' (U pour "User table" ). Sous Oracle, c'est à peu près la même requête, mais sur une autre table. C'est 100% dépendant du SGBD. Tant que t'auras pas répondu à cette question, on pourras pas t'aider.

Reply

Marsh Posté le 02-02-2004 à 13:46:31    

MagicBuzz a écrit :

Avec SQL Server, par exemple, c'est select * from sysobject where type = 'U' (U pour "User table" ). Sous Oracle, c'est à peu près la même requête, mais sur une autre table. C'est 100% dépendant du SGBD. Tant que t'auras pas répondu à cette question, on pourras pas t'aider.


Ouais en fait, je veux faire une requete pour SQLserver via une application en ASP.net

Reply

Marsh Posté le 02-02-2004 à 14:32:47    

ben donc c'est la requête que je t'ai donné.
 
ps: ça doit être "xtype" non pas "type". M'enfin je te laisse chercher, c'est dans cette table de toute façon.


Message édité par MagicBuzz le 02-02-2004 à 14:34:37
Reply

Marsh Posté le 02-02-2004 à 14:38:53    

La requête exacte :
 

select * from sysobjects
where xtype = 'U'
and [name] != 'dtproperties'

Reply

Marsh Posté le 02-02-2004 à 14:43:51    

Sinon, histoire de retrouver les tables et leurs colonnes :
 

select sysobjects.[name], syscolumns.[name]  
from sysobjects, syscolumns
where sysobjects.xtype = 'U'
and sysobjects.[name] != 'dtproperties'
and syscolumns.[id] = sysobjects.[id]


 
Je te laisse farfouiller dans les tables sys*, y'a rigoureusement tout ce que tu veux.
 
A savoir que si tu as besoin de retrouver des infos sur plusieurs bases à la fois, alors va dans la table "master", y'a tout sur toutes les bases dedans.

Reply

Marsh Posté le 02-02-2004 à 14:43:51   

Reply

Marsh Posté le 02-02-2004 à 14:46:56    

0K alors merci bien MAGICBUZZ pour ton aide !
 
 :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed