Création d'une clé primaire sur une table attachée [Résolu]

Messages postés
124
Date d'inscription
mercredi 23 novembre 2005
Statut
Membre
Dernière intervention
19 septembre 2013
- - Dernière réponse : tri_yann
Messages postés
124
Date d'inscription
mercredi 23 novembre 2005
Statut
Membre
Dernière intervention
19 septembre 2013
- 21 nov. 2008 à 14:34
Bonjour,

Je crée par code une table attachée sous Access liée à un serveur SQL 2005 avec ADO. Je ne parviens pas à ajouter à cette table liée (une fois qu'elle est créée), la clé primaire. La création de la clé primaire est primordiale lorsqu'on lie une vue ou une table qui n'en a pas. Access demande systématiquement de spécifier l'identifiant unique lors de la création de la table via l'assistant.
Quelqu'un sait-il pourquoi Access émet-il des difficultés à spécifier une clé primaire sur une table attachée alors que ca marche très bien sur une table locale.

Voici le code qui devrait marcher , mais....

<hr />

Set cnn = CurrentProject.Connection
cat.ActiveConnection = cnn




'--- Création de la table liée ---



Set tbl = New ADOX.Table



With tbl
    .Name = "toto"
    Set .ParentCatalog = cat
    .Properties("Jet OLEDB:Link Datasource") = ""
    .Properties("Jet OLEDB:Remote Table Name").Value = " dbo.toto"
    .Properties("Jet OLEDB:Create Link").Value = True
    .Properties("Jet OLEDB:Link Provider String").Value = "ODBC;Description=Base AM SQL sur R02;DRIVER=SQL Server;SERVER=R02;APP=Microsoft Open Database Connectivity;WSID=PTISSERAND<wbr>;DATABASE=BaseToto;Trusted<wbr>_Connection=Yes"
End With</wbr></wbr>



'--- Création de la clé primaire puis accrochage à la table ---




Set pk = New ADOX.Key
With pk
    .Name = "PK_Typecode"
    .Type = adKeyPrimary
    .Columns.Append "Typecode"
End With


tbl.Keys.Append pk




'--- Accrochage de la table au catalogue ---


With cat.Tables
    .Append tbl
    .Refresh
End With

<hr />

Cordialement
Yann
Afficher la suite 

1 réponse

Meilleure réponse
Messages postés
124
Date d'inscription
mercredi 23 novembre 2005
Statut
Membre
Dernière intervention
19 septembre 2013
2
3
Merci
Merci,
J'ai trouvé. Pour ceux que ca intéresse, une table liée en DAO n'a pas de clé primaire sous Access. Il faut lui créer un index.

Yann

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 119 internautes nous ont dit merci ce mois-ci

Commenter la réponse de tri_yann