Je cherche à récupérer les noms des index d'une table. Ca donne ceci
sous DAO :
For Each TabEnCours In dBaseDeDonnées.TableDefs
If TabEnCours.name = Table Then 'remplit un tableau
avec le nom des index
ReDim TableauIndex(TabEnCours.Indexes.Count - 1)
TailleTableauIndex = TabEnCours.Indexes.Count - 2
a = 0
For Each idx In TabEnCours.Indexes
TableauIndex(a).Champs = idx.Fields
TableauIndex(a).Type = idx.Unique
a = a + 1
Next idx
Exit For
End If
Next TabEnCours
J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la
gestion des index dans l'aide. Quelqu'un aurait-il une idée ?
Merci d'avance, et bonnes fêtes de fin d'année !
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Sunny
Avec sql serveur tu peux regarder dans la table système sysindexes avec tbname=[NOM_DE_TABLE]
"Via" a écrit dans le message de news:
Bonjour à tous !
Je cherche à récupérer les noms des index d'une table. Ca donne ceci sous DAO :
For Each TabEnCours In dBaseDeDonnées.TableDefs If TabEnCours.name = Table Then 'remplit un tableau avec le nom des index ReDim TableauIndex(TabEnCours.Indexes.Count - 1) TailleTableauIndex = TabEnCours.Indexes.Count - 2 a = 0 For Each idx In TabEnCours.Indexes TableauIndex(a).Champs = idx.Fields TableauIndex(a).Type = idx.Unique a = a + 1 Next idx Exit For End If Next TabEnCours
J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la gestion des index dans l'aide. Quelqu'un aurait-il une idée ? Merci d'avance, et bonnes fêtes de fin d'année !
Via :)
Avec sql serveur tu peux regarder dans la table système sysindexes avec
tbname=[NOM_DE_TABLE]
"Via" <chew.baka@caramail.com> a écrit dans le message de news:
eb39e50b.0312260721.207a0ac4@posting.google.com...
Bonjour à tous !
Je cherche à récupérer les noms des index d'une table. Ca donne ceci
sous DAO :
For Each TabEnCours In dBaseDeDonnées.TableDefs
If TabEnCours.name = Table Then 'remplit un tableau
avec le nom des index
ReDim TableauIndex(TabEnCours.Indexes.Count - 1)
TailleTableauIndex = TabEnCours.Indexes.Count - 2
a = 0
For Each idx In TabEnCours.Indexes
TableauIndex(a).Champs = idx.Fields
TableauIndex(a).Type = idx.Unique
a = a + 1
Next idx
Exit For
End If
Next TabEnCours
J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la
gestion des index dans l'aide. Quelqu'un aurait-il une idée ?
Merci d'avance, et bonnes fêtes de fin d'année !
Avec sql serveur tu peux regarder dans la table système sysindexes avec tbname=[NOM_DE_TABLE]
"Via" a écrit dans le message de news:
Bonjour à tous !
Je cherche à récupérer les noms des index d'une table. Ca donne ceci sous DAO :
For Each TabEnCours In dBaseDeDonnées.TableDefs If TabEnCours.name = Table Then 'remplit un tableau avec le nom des index ReDim TableauIndex(TabEnCours.Indexes.Count - 1) TailleTableauIndex = TabEnCours.Indexes.Count - 2 a = 0 For Each idx In TabEnCours.Indexes TableauIndex(a).Champs = idx.Fields TableauIndex(a).Type = idx.Unique a = a + 1 Next idx Exit For End If Next TabEnCours
J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la gestion des index dans l'aide. Quelqu'un aurait-il une idée ? Merci d'avance, et bonnes fêtes de fin d'année !
Via :)
Via
Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...) Simplement il n'y a pas de champ tbname dans la table sysindexes, il n'y a qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas vraiment en fait... Un autre moyen que je n'aurais pas vu ? Merci d'avance,
Via :)
"Sunny" a écrit dans le message de news:3fec76c9$0$17133$
Avec sql serveur tu peux regarder dans la table système sysindexes avec tbname=[NOM_DE_TABLE]
"Via" a écrit dans le message de news:
> Bonjour à tous ! > > Je cherche à récupérer les noms des index d'une table. Ca donne ceci > sous DAO : > > For Each TabEnCours In dBaseDeDonnées.TableDefs > If TabEnCours.name = Table Then 'remplit un tableau > avec le nom des index > ReDim TableauIndex(TabEnCours.Indexes.Count - 1) > TailleTableauIndex = TabEnCours.Indexes.Count - 2 > a = 0 > For Each idx In TabEnCours.Indexes > TableauIndex(a).Champs = idx.Fields > TableauIndex(a).Type = idx.Unique > a = a + 1 > Next idx > Exit For > End If > Next TabEnCours > > J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la > gestion des index dans l'aide. Quelqu'un aurait-il une idée ? > Merci d'avance, et bonnes fêtes de fin d'année ! > > Via :)
Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...)
Simplement il n'y a pas de champ tbname dans la table sysindexes, il n'y a
qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas
vraiment en fait... Un autre moyen que je n'aurais pas vu ?
Merci d'avance,
Via :)
"Sunny" <thomas1446@free.fr> a écrit dans le message de
news:3fec76c9$0$17133$626a54ce@news.free.fr...
Avec sql serveur tu peux regarder dans la table système sysindexes avec
tbname=[NOM_DE_TABLE]
"Via" <chew.baka@caramail.com> a écrit dans le message de news:
eb39e50b.0312260721.207a0ac4@posting.google.com...
> Bonjour à tous !
>
> Je cherche à récupérer les noms des index d'une table. Ca donne ceci
> sous DAO :
>
> For Each TabEnCours In dBaseDeDonnées.TableDefs
> If TabEnCours.name = Table Then 'remplit un tableau
> avec le nom des index
> ReDim TableauIndex(TabEnCours.Indexes.Count - 1)
> TailleTableauIndex = TabEnCours.Indexes.Count - 2
> a = 0
> For Each idx In TabEnCours.Indexes
> TableauIndex(a).Champs = idx.Fields
> TableauIndex(a).Type = idx.Unique
> a = a + 1
> Next idx
> Exit For
> End If
> Next TabEnCours
>
> J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la
> gestion des index dans l'aide. Quelqu'un aurait-il une idée ?
> Merci d'avance, et bonnes fêtes de fin d'année !
>
> Via :)
Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...) Simplement il n'y a pas de champ tbname dans la table sysindexes, il n'y a qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas vraiment en fait... Un autre moyen que je n'aurais pas vu ? Merci d'avance,
Via :)
"Sunny" a écrit dans le message de news:3fec76c9$0$17133$
Avec sql serveur tu peux regarder dans la table système sysindexes avec tbname=[NOM_DE_TABLE]
"Via" a écrit dans le message de news:
> Bonjour à tous ! > > Je cherche à récupérer les noms des index d'une table. Ca donne ceci > sous DAO : > > For Each TabEnCours In dBaseDeDonnées.TableDefs > If TabEnCours.name = Table Then 'remplit un tableau > avec le nom des index > ReDim TableauIndex(TabEnCours.Indexes.Count - 1) > TailleTableauIndex = TabEnCours.Indexes.Count - 2 > a = 0 > For Each idx In TabEnCours.Indexes > TableauIndex(a).Champs = idx.Fields > TableauIndex(a).Type = idx.Unique > a = a + 1 > Next idx > Exit For > End If > Next TabEnCours > > J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la > gestion des index dans l'aide. Quelqu'un aurait-il une idée ? > Merci d'avance, et bonnes fêtes de fin d'année ! > > Via :)
Via
Au moins un début de réponse : select * from sysindexes where id=object_id('Adresse') Merci Yan :)
Via :)
"Via" a écrit dans le message de news:
Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...) Simplement il n'y a pas de champ tbname dans la table sysindexes, il n'y
a
qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas vraiment en fait... Un autre moyen que je n'aurais pas vu ? Merci d'avance,
Via :)
"Sunny" a écrit dans le message de news:3fec76c9$0$17133$ > Avec sql serveur tu peux regarder dans la table système sysindexes avec > tbname=[NOM_DE_TABLE] > > "Via" a écrit dans le message de news: > > > Bonjour à tous ! > > > > Je cherche à récupérer les noms des index d'une table. Ca donne ceci > > sous DAO : > > > > For Each TabEnCours In dBaseDeDonnées.TableDefs > > If TabEnCours.name = Table Then 'remplit un tableau > > avec le nom des index > > ReDim TableauIndex(TabEnCours.Indexes.Count - 1) > > TailleTableauIndex = TabEnCours.Indexes.Count - 2 > > a = 0 > > For Each idx In TabEnCours.Indexes > > TableauIndex(a).Champs = idx.Fields > > TableauIndex(a).Type = idx.Unique > > a = a + 1 > > Next idx > > Exit For > > End If > > Next TabEnCours > > > > J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la > > gestion des index dans l'aide. Quelqu'un aurait-il une idée ? > > Merci d'avance, et bonnes fêtes de fin d'année ! > > > > Via :) > >
Au moins un début de réponse :
select * from sysindexes where id=object_id('Adresse')
Merci Yan :)
Via :)
"Via" <chew.baka@caramail.com> a écrit dans le message de
news:OgkbzwezDHA.2000@TK2MSFTNGP11.phx.gbl...
Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...)
Simplement il n'y a pas de champ tbname dans la table sysindexes, il n'y
a
qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas
vraiment en fait... Un autre moyen que je n'aurais pas vu ?
Merci d'avance,
Via :)
"Sunny" <thomas1446@free.fr> a écrit dans le message de
news:3fec76c9$0$17133$626a54ce@news.free.fr...
> Avec sql serveur tu peux regarder dans la table système sysindexes avec
> tbname=[NOM_DE_TABLE]
>
> "Via" <chew.baka@caramail.com> a écrit dans le message de news:
> eb39e50b.0312260721.207a0ac4@posting.google.com...
> > Bonjour à tous !
> >
> > Je cherche à récupérer les noms des index d'une table. Ca donne ceci
> > sous DAO :
> >
> > For Each TabEnCours In dBaseDeDonnées.TableDefs
> > If TabEnCours.name = Table Then 'remplit un tableau
> > avec le nom des index
> > ReDim TableauIndex(TabEnCours.Indexes.Count - 1)
> > TailleTableauIndex = TabEnCours.Indexes.Count - 2
> > a = 0
> > For Each idx In TabEnCours.Indexes
> > TableauIndex(a).Champs = idx.Fields
> > TableauIndex(a).Type = idx.Unique
> > a = a + 1
> > Next idx
> > Exit For
> > End If
> > Next TabEnCours
> >
> > J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la
> > gestion des index dans l'aide. Quelqu'un aurait-il une idée ?
> > Merci d'avance, et bonnes fêtes de fin d'année !
> >
> > Via :)
>
>
Au moins un début de réponse : select * from sysindexes where id=object_id('Adresse') Merci Yan :)
Via :)
"Via" a écrit dans le message de news:
Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...) Simplement il n'y a pas de champ tbname dans la table sysindexes, il n'y
a
qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas vraiment en fait... Un autre moyen que je n'aurais pas vu ? Merci d'avance,
Via :)
"Sunny" a écrit dans le message de news:3fec76c9$0$17133$ > Avec sql serveur tu peux regarder dans la table système sysindexes avec > tbname=[NOM_DE_TABLE] > > "Via" a écrit dans le message de news: > > > Bonjour à tous ! > > > > Je cherche à récupérer les noms des index d'une table. Ca donne ceci > > sous DAO : > > > > For Each TabEnCours In dBaseDeDonnées.TableDefs > > If TabEnCours.name = Table Then 'remplit un tableau > > avec le nom des index > > ReDim TableauIndex(TabEnCours.Indexes.Count - 1) > > TailleTableauIndex = TabEnCours.Indexes.Count - 2 > > a = 0 > > For Each idx In TabEnCours.Indexes > > TableauIndex(a).Champs = idx.Fields > > TableauIndex(a).Type = idx.Unique > > a = a + 1 > > Next idx > > Exit For > > End If > > Next TabEnCours > > > > J'aimerais faire la même chose en ADO, mais je ne trouve rien sur la > > gestion des index dans l'aide. Quelqu'un aurait-il une idée ? > > Merci d'avance, et bonnes fêtes de fin d'année ! > > > > Via :) > >
Via
Un autre plus sympathique : la procédure stockée sp_helpindex <nom table> Voici comment j'essaie de l'utiliser :
Au débogage, j'ai une erreur : -2147217900 (80040e14) [Microsoft][ODBS SQL Server Driver][SQL Server] Impossible de trouver la procédure stockée 'sp_helpindex TabPFTests'. Hors quand j'écris la même commande dans une vue, ça ne pose aucun problème. Où est mon erreur ? Merci d'avance,
Via :)
"Via" a écrit dans le message de news:
Au moins un début de réponse : select * from sysindexes where id=object_id('Adresse') Merci Yan :)
Via :)
"Via" a écrit dans le message de news: > Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...) > Simplement il n'y a pas de champ tbname dans la table sysindexes, il
n'y
a > qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas > vraiment en fait... Un autre moyen que je n'aurais pas vu ? > Merci d'avance, > > Via :) > > "Sunny" a écrit dans le message de > news:3fec76c9$0$17133$ > > Avec sql serveur tu peux regarder dans la table système sysindexes
avec
> > tbname=[NOM_DE_TABLE] > > > > "Via" a écrit dans le message de news: > > > > > Bonjour à tous ! > > > > > > Je cherche à récupérer les noms des index d'une table. Ca donne
ceci
> > > sous DAO : > > > > > > For Each TabEnCours In dBaseDeDonnées.TableDefs > > > If TabEnCours.name = Table Then 'remplit un tableau > > > avec le nom des index > > > ReDim TableauIndex(TabEnCours.Indexes.Count - 1) > > > TailleTableauIndex = TabEnCours.Indexes.Count - 2 > > > a = 0 > > > For Each idx In TabEnCours.Indexes > > > TableauIndex(a).Champs = idx.Fields > > > TableauIndex(a).Type = idx.Unique > > > a = a + 1 > > > Next idx > > > Exit For > > > End If > > > Next TabEnCours > > > > > > J'aimerais faire la même chose en ADO, mais je ne trouve rien sur
la
> > > gestion des index dans l'aide. Quelqu'un aurait-il une idée ? > > > Merci d'avance, et bonnes fêtes de fin d'année ! > > > > > > Via :) > > > > > >
Un autre plus sympathique : la procédure stockée sp_helpindex <nom table>
Voici comment j'essaie de l'utiliser :
Au débogage, j'ai une erreur : -2147217900 (80040e14) [Microsoft][ODBS SQL
Server Driver][SQL Server] Impossible de trouver la procédure stockée
'sp_helpindex TabPFTests'.
Hors quand j'écris la même commande dans une vue, ça ne pose aucun
problème.
Où est mon erreur ?
Merci d'avance,
Via :)
"Via" <chew.baka@caramail.com> a écrit dans le message de
news:ePpeDnizDHA.2568@TK2MSFTNGP09.phx.gbl...
Au moins un début de réponse :
select * from sysindexes where id=object_id('Adresse')
Merci Yan :)
Via :)
"Via" <chew.baka@caramail.com> a écrit dans le message de
news:OgkbzwezDHA.2000@TK2MSFTNGP11.phx.gbl...
> Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...)
> Simplement il n'y a pas de champ tbname dans la table sysindexes, il
n'y
a
> qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas
> vraiment en fait... Un autre moyen que je n'aurais pas vu ?
> Merci d'avance,
>
> Via :)
>
> "Sunny" <thomas1446@free.fr> a écrit dans le message de
> news:3fec76c9$0$17133$626a54ce@news.free.fr...
> > Avec sql serveur tu peux regarder dans la table système sysindexes
avec
> > tbname=[NOM_DE_TABLE]
> >
> > "Via" <chew.baka@caramail.com> a écrit dans le message de news:
> > eb39e50b.0312260721.207a0ac4@posting.google.com...
> > > Bonjour à tous !
> > >
> > > Je cherche à récupérer les noms des index d'une table. Ca donne
ceci
> > > sous DAO :
> > >
> > > For Each TabEnCours In dBaseDeDonnées.TableDefs
> > > If TabEnCours.name = Table Then 'remplit un tableau
> > > avec le nom des index
> > > ReDim TableauIndex(TabEnCours.Indexes.Count - 1)
> > > TailleTableauIndex = TabEnCours.Indexes.Count - 2
> > > a = 0
> > > For Each idx In TabEnCours.Indexes
> > > TableauIndex(a).Champs = idx.Fields
> > > TableauIndex(a).Type = idx.Unique
> > > a = a + 1
> > > Next idx
> > > Exit For
> > > End If
> > > Next TabEnCours
> > >
> > > J'aimerais faire la même chose en ADO, mais je ne trouve rien sur
la
> > > gestion des index dans l'aide. Quelqu'un aurait-il une idée ?
> > > Merci d'avance, et bonnes fêtes de fin d'année !
> > >
> > > Via :)
> >
> >
>
>
Au débogage, j'ai une erreur : -2147217900 (80040e14) [Microsoft][ODBS SQL Server Driver][SQL Server] Impossible de trouver la procédure stockée 'sp_helpindex TabPFTests'. Hors quand j'écris la même commande dans une vue, ça ne pose aucun problème. Où est mon erreur ? Merci d'avance,
Via :)
"Via" a écrit dans le message de news:
Au moins un début de réponse : select * from sysindexes where id=object_id('Adresse') Merci Yan :)
Via :)
"Via" a écrit dans le message de news: > Merci Sunny (marrant j'ai une amie que l'on surnomme comme ça...) > Simplement il n'y a pas de champ tbname dans la table sysindexes, il
n'y
a > qu'un champ name et c'est le nom de l'index, ce qui ne m'arrange pas > vraiment en fait... Un autre moyen que je n'aurais pas vu ? > Merci d'avance, > > Via :) > > "Sunny" a écrit dans le message de > news:3fec76c9$0$17133$ > > Avec sql serveur tu peux regarder dans la table système sysindexes
avec
> > tbname=[NOM_DE_TABLE] > > > > "Via" a écrit dans le message de news: > > > > > Bonjour à tous ! > > > > > > Je cherche à récupérer les noms des index d'une table. Ca donne
ceci
> > > sous DAO : > > > > > > For Each TabEnCours In dBaseDeDonnées.TableDefs > > > If TabEnCours.name = Table Then 'remplit un tableau > > > avec le nom des index > > > ReDim TableauIndex(TabEnCours.Indexes.Count - 1) > > > TailleTableauIndex = TabEnCours.Indexes.Count - 2 > > > a = 0 > > > For Each idx In TabEnCours.Indexes > > > TableauIndex(a).Champs = idx.Fields > > > TableauIndex(a).Type = idx.Unique > > > a = a + 1 > > > Next idx > > > Exit For > > > End If > > > Next TabEnCours > > > > > > J'aimerais faire la même chose en ADO, mais je ne trouve rien sur
la
> > > gestion des index dans l'aide. Quelqu'un aurait-il une idée ? > > > Merci d'avance, et bonnes fêtes de fin d'année ! > > > > > > Via :) > > > > > >