Cours pdf utiliser le modèle ADOX avec Visual Basic, tutoriel & guide de travaux pratiques en pdf.
Propriétaire
Cette notion de propriété est très importante. En effet seul le propriétaire d’un objet peut faire certaines modifications sur celui-ci et attribuer les droits sur ces objets. Par défaut, le propriétaire d’un objet est son créateur. Cela implique deux choses :
Ne pas laisser aux utilisateurs le droit de créer des objets dans vos bases sans un contrôle car vous n’auriez pas de droit de modifications sur ces objets sans en reprendre la propriété.
Gérer strictement les droits sur la base.
Nous y reviendrons plus en détail lorsque nous aborderons la sécurité.
ParentCatalog
Lorsque l’on crée des objets, ils ne sont reliés à aucun catalogue. Dès lors, comme ils ne connaissent pas leurs fournisseurs, il n’est pas possible de valoriser leurs propriétés. On définit donc la propriété ParentCatalog d’un objet dès que l’on souhaite valoriser ses propriétés. Ceci pourtant dissimule un problème d’un fort beau gabarit ma foi. Outre le fournisseur, le catalogue transmet aussi ses droits de propriétaire. Si on n’y prend pas garde, il se peut que l’objet se retrouve ayant des droits non souhaités.
L’objet Catalog
C’est l’objet racine du modèle.
ActiveConnection (Prop. S)
C’est la seule propriété de l’objet Catalog, qui lui permet de définir le fournisseur de données, la base de données et éventuellement les paramètres de sécurité. Cette connexion est stricto sensu une connexion ADO, on peut donc parfaitement utiliser une connexion existante. Attention toutefois, ce sont les paramètres de la connexion qui définissent en partie les possibilités du fournisseur, il est donc vivement recommandé de créer sa connexion pour la gestion de la sécurité.
Create (Mth.)
Permet la création d’une nouvelle base de données selon les paramètres de la chaîne de connexion passée en paramètre. Attention, le nom de la base de données ne doit pas être une base existante. Le paramètre à passer à la méthode doit être une chaîne de connexion valide.
GetObjectOwner & SetObjectOwner (Mth.)
De la forme Catalog.SetObjectOwner ObjectName, ObjectType , OwnerName [, ObjectTypeId] Owner = Catalog.GetObjectOwner(ObjectName, ObjectType [, ObjectTypeId])
Permet de renvoyer ou de définir le propriétaire d’un objet de la base, celui-ci pouvant être la base de données, une table, un champ…..
Ne fonctionne qu’avec un fichier de sécurité défini.
Les collections
L’objet Catalog renvoie aussi cinq collections qui représentent la structure de la base. Nous allons maintenant étudier ces objets
Collections de l’objet Catalog
Dans ADOX, les collections ont normalement une propriété Count, et quatre méthodes.Attention le premier index d’une collection est zéro.
Append
Ajoute un objet à la collection. La méthode Append est propre à chaque collection, aussi allons nous la voir en détail plus loin. Notons toutefois qu’un objet créé est librement manipulable, tant qu’il n’a pas été ajouté à la collection correspondante. Après l’ajout, un certain nombre de propriétés passe en lecture seule.
Item
Renvoie un élément d’une collection par son nom ou son index.
Delete
Retire un élément d’une collection. Il faut faire très attention à la suppression de certains éléments qui peut mettre en danger l’intégrité des données voire endommager la base
Refresh
Met à jour la collection.
Collection tables
ésente l’ensemble des tables, au sens large du terme, qui compose la base de données. Ces tables peuvent être rangées dans les familles suivantes :
Table système Table Temporaire Table de données Vues
En générale on ne travaille que sur les tables de données à l’aide de l’objet Table.
Append
De la forme Cat.Tables.Append NomTable. Lors de la création tous les objets appartenant à la table doivent être créés avant l’ajout de celle-ci à la collection
Collection Procedures
Représente l’ensemble des requêtes définies dans la base de données à l’exclusion des requêtes non paramétrées renvoyant des enregistrements.
Append
De la forme Cat.Procedures.Append NomRequete, Command. Command représente un objet command qui représente la requête.
Collection Views
Représente l’ensemble des requêtes non paramétrées renvoyant des enregistrements. On les retrouve d’une certaine façon dans la collection Tables avec Access.
Append
De la forme Cat.Views.Append NomRequete, Command. Command représente un objet command qui représente la requête.
Collection Groups
Représente l’ensemble des groupes définis dans la base. A ne pas confondre avec la collection Groups de l’objet User qui est le groupe auquel appartient un utilisateur.
Append
De la forme Cat.Groups.Append NomGroupe. Ceci représente l’ajout d’un groupe à la base de données. Les permissions doivent être définies lors de l’ajout du groupe à la collection. Le groupe doit être ajouté à la collection avant la création d’un utilisateur du groupe.
Introduction
Préambule
Rappels Access
Sécurité
Paramétrage JET
Rappels ADO
Propriétés statiques & dynamiques (Properties)
Objet Parameter
Propriétaire
Collection Groups
Objet Index
Techniques de sécurisation
Une autre solution : le DDL
Conclusion sur la sécurité
Conclusion