RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Serv: irc.irc-land.org
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 clé unique dans un table liée d'Access

Forum : ACCESS
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ ACCESS

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM ACCESS

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
yifananny
Nouveau membre
Inscrit : 29/05/2008
Messages : 1
Message
#153591
Posté le 29/05/08 à 09:46
lorsque je crée une table liée à partir d'une vue, à la main, access me demande à la fin de choisir un ou plusieurs champs comme clé unique … (par exemple l'id, ou pr files lines le file_id et le line_id).Du coup je peux modifier les données de la vue.

Mais quand je crée les table liée automatiquement avec un macro , ça ne me crée par l'index.J'ai essayé de modifer le programme pour le faire, mais Access refuse et me crée un erreur si je fais cet index

Je vous remercie de tous votre réponse

pour créer::
...........
Set tdf = New TableDef
tdf.Name = arrTableName(i)
tdf.SourceTableName = arrSourceName(i)
tdf.Connect = strSourceConnect
CurrentDb.TableDefs.Append tdf
..........

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

francisHop
Membre newbie
Inscrit : 11/05/2008
Messages : 54
Message
#153664
Posté le 31/05/08 à 08:04
Bonjour,

Le gros souci, la création d'index.
On peut voir avec une simple requête :

CREATE TABLE tblFrancisHop1
(IDClient AutoIncrement CONSTRAINT CléPrimaire PRIMARY KEY,
Prénom TEXT (30),
Nom TEXT (30),
NomEntreprise TEXT (60) CONSTRAINT NomEntreprise UNIQUE,
Adresse TEXT (80),
Ville TEXT (40),
État TEXT (2),
CodePostal TEXT (5),
CONSTRAINT NomClient UNIQUE (Nom, Prénom) );


Ou alors on place derrière un bouton :

TableCreateDAO

Sans oublier dans un module :


Public Function TableCreateDAO() Dim Db As DAO.Database Dim Tbl As DAO.TableDef Dim fld As DAO.Field Dim idx As DAO.Index Dim Prp As DAO.Property Set Db = CurrentDb() ' Ouverture base de données Set Tbl = Db.CreateTableDef("NouvelleTableFH") 'Création d'une table '******************************************************************************** Set idx = Tbl.CreateIndex("PrimaryKey") 'création d'un index idx.Primary = True 'clé primaire idx.Required = True idx.Unique = True ' sans doublons Set fld = idx.CreateField("CodeClient") 'définition du champ qui sert d'index idx.Fields.Append fld 'ajout du champ dans l'index Tbl.Indexes.Append idx 'ajout de l'index dans la table '********************************************************************************** Set fld = Tbl.CreateField("CodeClient", dbLong) 'création du Champ n°1 fld.OrdinalPosition = 1 'champ position 1 fld.Attributes = dbAutoIncrField 'définition numéroauto Tbl.Fields.Append fld 'ajout du champ dans la table Set fld = Tbl.CreateField("NomClient", dbText) 'Champ n°2 fld.OrdinalPosition = 2 'champ position 2 fld.Size = 100 'taille 100 caractères fld.Required = True 'valeur nulle interdite fld.AllowZeroLength = False 'chaine vide autorisée Tbl.Fields.Append fld 'ajout du champ dans la table Set fld = Tbl.CreateField("ChampTexte", dbText) 'Champ n°3 fld.OrdinalPosition = 3 fld.Size = 100 fld.Required = True fld.AllowZeroLength = False Tbl.Fields.Append fld Set fld = Tbl.CreateField("EntierLong", dbLong) 'Champ n°4 fld.OrdinalPosition = 4 fld.Attributes = dbFixedField Tbl.Fields.Append fld Set fld = Tbl.CreateField("Booleen", dbBoolean) 'Champ n°5 fld.OrdinalPosition = 5 Tbl.Fields.Append fld Set fld = Tbl.CreateField("Byte", dbByte) 'Champ n°6 fld.OrdinalPosition = 6 Tbl.Fields.Append fld Set fld = Tbl.CreateField("Entier", dbInteger) 'Champ n°7 fld.OrdinalPosition = 7 Tbl.Fields.Append fld Set fld = Tbl.CreateField("Monétaire", dbCurrency) 'Champ n°8 fld.OrdinalPosition = 8 Tbl.Fields.Append fld Set fld = Tbl.CreateField("ReelSimple", dbSingle) 'Champ n°9 fld.OrdinalPosition = 9 Tbl.Fields.Append fld Set fld = Tbl.CreateField("ReelDouble", dbDouble) 'Champ n°10 fld.OrdinalPosition = 10 Tbl.Fields.Append fld Set fld = Tbl.CreateField("ChampDate", dbDate) 'Champ n°11 fld.OrdinalPosition = 11 Tbl.Fields.Append fld Set fld = Tbl.CreateField("Binary", dbBinary) 'Champ n°12 fld.OrdinalPosition = 12 Tbl.Fields.Append fld Set fld = Tbl.CreateField("ChampMemo", dbMemo) 'Champ n°13 fld.OrdinalPosition = 13 Tbl.Fields.Append fld Set fld = Tbl.CreateField("ChampOLE", dbBigInt) 'Champ n°14 fld.OrdinalPosition = 14 Tbl.Fields.Append fld Db.TableDefs.Append Tbl 'ajoute la table à la base RefreshDatabaseWindow 'rafraichissement de la fenêtre base de données '************************************************************************************************** Set tdf = Db.TableDefs("NouvelleTableFH") ' entrée des propriétés caption et description Set fld = Tbl.Fields("CodeClient") 'Champ concerné Set Prp = fld.CreateProperty("Caption", dbText) Prp.Value = "Code Client" 'Légende fld.Properties.Append Prp Set Prp = fld.CreateProperty("Description", dbText) Prp.Value = "Champ clef client" 'Description fld.Properties.Append Prp Set fld = Tbl.Fields("NomClient") 'Champ concerné Set Prp = fld.CreateProperty("Caption", dbText) Prp.Value = "Nom Client" 'Légende fld.Properties.Append Prp Set Prp = fld.CreateProperty("Description", dbText) Prp.Value = "Nom du client" 'Description fld.Properties.Append Prp 'Etc. End Function


Cordialement.
__________________________
Le peu que je sais, c'est à mon ignorance que je le dois. Sacha Guitry

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 


    PAGE : [1]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.