Problème pour déclaration d'un champ auto increment - VB/VBA/VBS - Programmation
Marsh Posté le 11-04-2006 à 10:05:16
Pour les numéros automatiques, il ne faut pas spécifier le type et le mot clef est AUTOINCREMENT sans underscore :
|
Marsh Posté le 11-04-2006 à 11:01:25
ok merci ça marche il me semblait pourtant avoir déjà essayé cette méthode. Enfin bref le principale c'est que celà fonctionne encore merci
Marsh Posté le 12-04-2006 à 09:54:31
Une autre petite question si je souhaite déclarer la table de la façon suivante :
Code :
|
Comment je fais pour déclarer le champ autoincrement ??
Marsh Posté le 12-04-2006 à 10:30:25
Of course .Append Table.CreateField("Id_station", AUTOINCREMENT) ne va pas marcher, il faut un dbquelquechose.
En m'inspirant de lexemple à http://msdn.microsoft.com/library/ [...] abaseX.asp je pense qu'il faut faire :
With Table.Fields |
Marsh Posté le 12-04-2006 à 10:35:57
je viens d'essayer mais ça ne marche pas.
Erreur : type de champs de données non valide
Marsh Posté le 12-04-2006 à 10:38:13
Sinon je fais :
Code :
|
donc la le champ est bien en NumeroAuto mais la le problème c'est que mes champs ne sont pas indexés
Marsh Posté le 12-04-2006 à 11:03:43
en fait j'ai remarqué que c'est lorsque je met plusieurs champs dans l'index que ça ne marche plus mais je n'ai pas de message d'erreur.
Marsh Posté le 12-04-2006 à 11:36:40
Le fait d'ajouter les champs à la collection de l'index avant de déclarer la propriété .Primary = True change-t-il quelque chose ?
Marsh Posté le 13-04-2006 à 16:40:12
Le lien chez Microsoft que j'ai cité plus haut donne un exemple qui marche (bien sûr c'est un peu différent, faut un peu l'adapter), et une rapide recherche sur Google avec les mots CreateIndex et CreateField retourne d'autres réponses qui constituent une source d'inspiration pour ta solution.
Marsh Posté le 11-04-2006 à 09:13:20
Bonjour,
je sais que ce problème à ce sujet revient souvent, mais je n'ai pas réussi à trouver la réponse à ma question.
Donc sous access, en vba j'essaye de créer des tables et l'un des champs de ces tables doit être de type auto increment mais je ne parvient pas à le déclarer correctement. J'ai essayé différentes méthodes mais sans succès et voici la dernière en date : CurrentDb.Execute "CREATE TABLE STATION__ (Id_station INT AUTO_INCREMENT PRIMARY KEY, Nom VARCHAR (50))"
Voila j'espère que vous pourrez m'aider
Merci