Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SQL SERVER 2005 - RECUPERER LA LISTE DES INDEXES EXISTANT SUR LA BASE COURANTE


Information sur la source



Description

Pour des besoin d'optimisation, on peut souhaiter avoir la liste des indexes existant sur les tables ou les vues.
Ce script permet d'obtenir ces information avec le type d'index.
 

Source

  • -------------------------------------------------------------------------------------
  • -- LISTE DES INDEXES EXISTANT SUR LA BASE COURANTE
  • -------------------------------------------------------------------------------------
  • SELECT
  • IDX.name AS INDEX_NAME,
  • SCH.name AS SCHEMA_NAME,
  • OBJ.name AS OBJECT_NAME,
  • COL.name AS COLUMN_NAME,
  • OBJ.type AS OBJECT_TYPE,
  • IDX.type_desc AS INDEX_TYPE
  • FROM sys.index_columns IDXC
  • INNER JOIN sys.objects OBJ
  • ON IDXC.object_id = OBJ.object_id
  • INNER JOIN sys.schemas SCH
  • ON SCH.schema_id = OBJ.schema_id
  • INNER JOIN sys.indexes IDX
  • ON (IDXC.object_id = IDX.object_id AND IDXC.index_id = IDX.index_id)
  • INNER JOIN sys.columns COL
  • ON (IDXC.column_id = COL.column_id AND OBJ.object_id = COL.object_id)
  • WHERE
  • (OBJ.type = 'U' OR OBJ.type = 'V')
  • -------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------
-- LISTE DES INDEXES EXISTANT SUR LA BASE COURANTE
-------------------------------------------------------------------------------------
SELECT 
	IDX.name				AS INDEX_NAME,
	SCH.name				AS SCHEMA_NAME,
	OBJ.name				AS OBJECT_NAME,
	COL.name				AS COLUMN_NAME,
	OBJ.type				AS OBJECT_TYPE,
	IDX.type_desc		AS INDEX_TYPE
FROM  sys.index_columns IDXC
INNER JOIN sys.objects OBJ 
		ON IDXC.object_id = OBJ.object_id 
INNER JOIN sys.schemas SCH
		ON SCH.schema_id = OBJ.schema_id
INNER JOIN sys.indexes IDX 
		ON (IDXC.object_id = IDX.object_id AND IDXC.index_id = IDX.index_id)
INNER JOIN sys.columns COL 
		ON (IDXC.column_id = COL.column_id AND OBJ.object_id = COL.object_id)
WHERE 
	(OBJ.type = 'U' OR OBJ.type = 'V')
-------------------------------------------------------------------------------------

Conclusion

Bon coding

Romelard Fabrice [MVP]
 

Commentaires et avis

Aucun commentaire pour le moment.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Drop Table [ par SuperBouly ] Bonjour, Je désire supprimer une table sur une base Access distante.Je fais : MaRequete="DROP TABLE MaTable" , puis le programme est censé exécute Base MySQL et Index [ par MadM@tt ] Bonjour à tous,J'ai quelques question concernant les Index dans une table SQL.Est-il utile de les mettre sur des champs enum (Par exemple sur un champ Requête sur table transformée en vue -> problèmes de performances [ par rt15 ] Bonjour,(Oracle 9.2.0.7.0)On a une table vacances de plus de 30 millions d'enregistrements.Certains traitements ne s'appliquent que sur une partie de Vue d'ensemble d'une BDD [ par astromanweb ] Bonjour,Je souhaiterai créer une "vue d'ensemble" de ma base de données.Par exemple :  le nombre d'enregistrements, la taille de la table pour chaque Index Dans SQL [ par crn_c21 ] Bonjour,Dans une table SQL 2005, j'ai un champ IdRlt(clè primaire).Dans ce champ, j'ajoute et je supprime des lignes très régulièrement et je dois don Insertion d'une variable dans table sql [ par jlmzk ] Salut à tous.Voila c'est tout simple, j'ai une variable $bc dont la valeur peut être par exemple AB01Si je fais un echo $bc; j'ai bien AB01 qui s'affi ECRIRE dans une ligne existante d'une table [ par ju0123456789 ] Bonjour,Je voudrais savori si quelqu'un pourrait me communiquer la syntaxe pour ecrire dans une BDD dans une ligne précise. Par exemple je veux écrire primary key sur type date [ par stefff01 ] Bonjour, J'aimerais mettre une clé primaire sur une table "historique" composée d'un numéro vers une autre table ainsi que d'une date. Le but serait d Faire un count dans une rquete SQL qui porte sur une autre table [ par 6xavier6 ] Bonjour a tousJe commence par remercier d'avance tous ceux qui tenteront de me venir en aide.Voila mon probleme. Je cherche à afficher le resultat d'u Ajouter la propriété "IDENTITY" [ par oumelaid ] Bonjour ,J'ai un table ,et je veux inséré la propriété "IDENTITY" qui incrémentée à partir de 100 par pas de 1.j'essaie de remettre le propriété :Alte


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,515 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.