Clé Primaire et ADODB

erefdatacomputing Messages postés 165 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 24 avril 2018 - 15 mars 2007 à 18:53
erefdatacomputing Messages postés 165 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 24 avril 2018 - 16 mars 2007 à 19:58
Bonjour à tous !!

Voilà mon problème:

Je crée une base de données ACCESS ('Test.mdb') et une Table ('table01') avec cette méthode: 

******************************************************************
Dim W As Workspace
Dim BD As Database
Dim t As TableDef
Dim f As Field

Set W = DBEngine.Workspaces(0)
Set BD = W.CreateDatabase("C:\Test.mdb", dbLangGeneral)
    Set t = BD.CreateTableDef("Table01")

    Set f = t.CreateField("nom", dbText,50)
    t.Fields.Append f
    Set f = t.CreateField("tel", dbText,15)
    t.Fields.Append f

BD.TableDefs.Append t
******************************************************************

Jusque là pas de soucis, mais j'aimerai créer une clé primaire dans cette table.
Soit en ajoutant un champ supplémentaire, soit en déclarant un des champs existant, comme clé primaire .

Merçi de me dire si c'est possible, et comment ...!   

Je comprends vite mais il faut m'expliquer longtemps et tout en détails !!!

5 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
16 mars 2007 à 08:55
Salut,


Car je n'ai pas trop le temps de faire la recherche, recherche sur le web avec le mot :


Primary Key


A+
Exploreur


 
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
16 mars 2007 à 09:01
Bonjour,

Je ne saurais trop te conseiller de créer (dans ta table) une clé primaire ad hoc, et peut être même automatique !
Celà t'évitera bien des désagréments et des croche-pieds ultérieurs .....
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
16 mars 2007 à 09:34
Il y a tres peu de temps, je voulais créer une table temporaire uniquement en code. Je suis passer par le sql de cette maniere :

SQL = "CREATE TABLE nom_table (champ1 Numeric PRIMARY KEY, champ2 Text(50)," & _
"[champ avec espace] Text(50), champ3 Text(50), Priorité Text(50));"
        
DoCmd.RunSQL SQL

Tu peux voir certains champs entre crochet, ceux sont des champs dont le nom comporte un espace (pareil si tu nomme un champ FROM et IN je crois car ceux sont des clause SQL). Le champ qui doit etre ta clé primaire est suivi de PRIMARY KEY.

Ca fonctionne nickel.
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
16 mars 2007 à 09:44
Désolé, j'ai pas vu que tu créais aussi une base de données, donc la par contre ca fonctionnera que sur ta propre base. Mais bon de toute maniere comme l'on dit les autres, le mot que tu dois chercher est PRIMARY KEY
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
erefdatacomputing Messages postés 165 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 24 avril 2018
16 mars 2007 à 19:58
Bonjour à Tous !!

Merçi pour vos coseils et indications, mais (parce qu'il y a un "mais" ...)  comme vous le voyez, je crée une base, une table et des champs, avec une procédure utilisant un "Workspaces" ... et j'aimerai continuer à utiliser celle-çi.


Donc je voudrais savoir comment créer une clé primaire, ou déclarer un des champs existants, comme une clé primaire, à partir de cette procédure "Workspaces".


D'avance "Merçi"  pour votre aide et votre compréhension !!! 


Je comprends vite mais il faut m'expliquer longtemps et tout en détails !!!
0
Rejoignez-nous