Maison Les sujets Access Comment utiliser la technologie ADO pour exploiter la base de données d'accès

Comment utiliser la technologie ADO pour exploiter la base de données d'accès

Nov 17, 2020 pm 04:22 PM
access 数据库

Comment utiliser la technologie ADO pour exploiter la base de données d'accès

Tout d'abord, présentons l'objet ADO :

1 Le VBA intégré dans Access est actuellement le principal outil de développement d'applications de base de données utilisant la technologie ADO. commun à la technologie d'accès aux données Microsoft ;

2. Le modèle objet ADO comprend neuf objets : connexion, jeu d'enregistrements, enregistrement, commande, paramètre, champ, propriété, flux et erreur

Recommandations associées : Tutoriel d'accès à la base de données

3. Introduction aux principaux objets ADO :

1) Objet de connexion : l'objet de plus haut niveau dans le modèle objet ADO, utilisé pour réaliser le connexion entre l'application et la source de données ;

2) Objet de commande : utiliser principalement des instructions SQL dans VBA pour accéder, interroger et modifier les données de la base de données, afin de réaliser des opérations qui ne peuvent pas être réalisées par les objets Recordset (table de données opérations de niveau), vous pouvez utiliser DoCmd à la place ;

3) Objet Recordset : l'objet le plus couramment utilisé et le plus important dans ADO, qui peut accéder aux tables et aux objets de requête. Les enregistrements renvoyés sont stockés dans l'objet Recordset. les principales opérations sont :

① Interroger les données de la table de données

②Ajouter des données dans la table de données

③Mettre à jour les données dans la table de données

④Supprimer des données spécifiques dans la table de données ;

Référencer les objets ADO dans Access

1.Étapes d'accès pour référencer ADO :

①Déclarer et initialiser l'objet Connection. ;

②Créer des objets Recordset et terminer la programmation Une opération

③ Fermer l'objet ADO

2. Déclarer et initialiser l'objet Connection

'Déclarer'. l'objet Connection : utilisez généralement cn comme préfixe de dénomination de la variable ;

Dim coName As ADODB.Connection
Copier après la connexion

'Initialisez l'objet Connection et connectez-vous à la base de données actuelle ;

Set cnName = CurrentProject.Connection
Copier après la connexion

3 Déclarez et ouvrez l'objet Recordset<. 🎜>

1) Déclarez et initialisez l'objet Recordset

Dim rsName As ADODB.Recoreset
set rsName = new ADODB.Recordset
Copier après la connexion

2) Ouvrir un objet Recordset

Utilisez la méthode Open de Recordset pour ouvrir une table de données, un objet de requête ou référencer directement l'instruction de requête SQL

rsName.Open source, ActiveConnection, CursorType,LockType,Option
Copier après la connexion

Comment utiliser la technologie ADO pour exploiter la base de données daccès 4. Fermez les objets Recordset et Connection

rsName.Close
cnName.Close
Set rsName = Nothing
Set cnName = Nothing
Copier après la connexion

Champs d'enregistrement de référence via l'objet Recordset

1 Là. Il existe deux manières de référencer des champs : référencer directement le nom du champ dans l'objet recordset ; utiliser Fields(n) de l'objet recordset. La référence d'attribut

Code = rsName!字段名
Copier après la connexion

' fait référence au premier enregistrement du champ

Code = rsName .Field(n)
Copier après la connexion
< ; 🎜>' fait référence au nième enregistrement du champ, n commence à 0, vous pouvez utiliser une boucle pour afficher le nombre d'enregistrements requis

2 Si le champ du jeu d'enregistrements contient des espaces ou est un mot réservé, le le champ doit être entouré de [ ] lors de la citation ;

Parcourir les enregistrements via l'objet Recordset

1. L'objet de jeu d'enregistrements Recordset fournit 4 méthodes pour parcourir les enregistrements

2. Les attributs BOF et EOF enregistrent respectivement si le pointeur est au début et à la fin du fichier Comment utiliser la technologie ADO pour exploiter la base de données daccès

Si le pointeur du jeu d'enregistrements pointe vers un enregistrement, BOF et EOF sont tous deux faux ;

'Ajouter un événement de bouton du composant de formulaire : accédez à l'enregistrement suivant

Priavte Sub ComomndNext_Click()
     rsDemo.MoveNext
     If rsDemo。EOF Then
          rsDemo.MoveFirst
     End If
End Sub
Copier après la connexion

3 LockType de l'objet Recordset L'attribut par défaut est adLockReadOnly (lecture seule)

.

Modifier les données via l'objet Recordset Comment utiliser la technologie ADO pour exploiter la base de données daccès

1 Utilisez la méthode AddNew pour ajouter des enregistrements

1) Appelez la méthode AddNew du jeu d'enregistrements génère un enregistrement vide

2) Attribuez des valeurs à chaque champ de l'enregistrement vide ;

3) Utilisez la méthode Update de l'ensemble d'enregistrements pour mettre à jour et conserver les nouveaux enregistrements

' Ajouter un événement de bouton d'enregistrement ; , en supposant que l'ensemble d'enregistrements rsDemo contient des champs Id(int), Name(String), Age(int)

Private Sub CommandAdd_Click()
     rsDemo.MoveLast  &#39;记录集指针移动到记录集最后
     rsDemo.AddNew  &#39;添加一条新纪录   
     rsDemo ! Id = "123"
     rsDemo ! Name = "assad"
     rsDemo ! Age = "18" 
     rsDemo.Update
End Sub
Copier après la connexion

2 Utilisez la méthode Update pour modifier l'enregistrement

1) Rechercher et. Déplacez le pointeur du jeu d'enregistrements vers l'enregistrement qui doit être modifié ;

2) Modifiez les valeurs de chaque champ de l'enregistrement

3) Utilisez la méthode de mise à jour du jeu d'enregistrements pour mettre à jour ; et conserver les nouveaux enregistrements ;

'Modifier toutes les valeurs du champ Âge dans l'ensemble d'enregistrements +1;

Private Sub UpdateAge() 
     rsDemo.MoveFirst
     Do
          Dim Code as Integer
          Code = rsDemo ! Age 
          rsDemo ! Age = Code +1
     Loop Until rsDemo.EOF
     rsDemo.Update
End Sub
Copier après la connexion

3 Utilisez la méthode Supprimer pour supprimer les enregistrements

. 1) Déplacez le pointeur du jeu d'enregistrements vers l'enregistrement qui doit être supprimé ;

2) Utilisez la méthode Supprimer pour supprimer l'enregistrement actuel

3) Désignez un enregistrement comme enregistrement actuel < ; 🎜>
&#39;删除rsDemo数据集中Age = "18" 的记录
Private Sub DeleteAge(Dim deleteAge as Integer)
     rsDemo.MoveFirst
     Do
          IF rsDemo ! Age == deleteAge Then
               rsDemo。Delete
               rsDemo。MoveNext
          End IF
     Loop Until rsDemo.EOF
End Sub
Copier après la connexion

Remarque : après la suppression d'un enregistrement, Access ne deviendra pas automatiquement l'enregistrement suivant. À ce stade, utilisez la méthode MoveNext pour positionner le pointeur du jeu d'enregistrements sur le dernier enregistrement ; >Utilisez la commande SQL via l'objet Command/DoCmd

Access fournit l'objet DoCmd. Sa méthode RunSOL peut utiliser des commandes SQL dans VBA

DoCmd.RunSQL "SQL命令"
Copier après la connexion

ou :

     Dim s AS String
     s = "SQL命令"
     DoCmd.RunSQL s
Copier après la connexion

1 ; . Définir les données

1) Créer une table de données

Format : Créer un nom de table (nom de champ type de données...)

Par exemple : DoCmd.RunSQL "Créer Étudiant diplômé de la table (texte du nom (6), octet d'âge, date d'admission)"

2) Ajouter un champ

Format : Modifier le nom de la table Ajouter le type de données du nom du champ

如:DoCmd.RunSQL "Alter Table student Add 学费 currency"

3)改变字段类型

格式: Alter Table 表名 Alter 字段名 新数据类型

如:DoCmd.RunSQL "Alter Table student Alter 年龄 integer"

4)改变字段宽度

格式: Alter Table 表名 Alter 字段名 新宽度

如:DoCmd.RunSQL "Alter Table studnt Alter 姓名 text(6)"

5)删除一个字段

格式: Alter 表名 Drop 字段名

如: DoCmd.RunSQL "Alter student Drop 年龄"

6)删除一个数据表

格式: Drop Table 表名

如:DoCmd.RunSQL "Drop Table student"

7)修改数据表名字

格式: DoCmd.rename "新表名", acTable, "旧表名"

如:DoCmd.rename "学生", acTable, "student"

2、编辑数据

1)向表中追加数据

格式: Insert into 表名 Values(记录.....)

注: 字符串型数据用 ‘ ’, 日期型型数据可以 ‘ ’,或 # #;

如:DoCmd.RunSQL "Insert into student Values('李达',35,'2003-1-15') "

或:

Dim name As String
Dim age As Byte, dates As Date         
name = InputBox("输入学生姓名")         
dates = InputBox("输入入学日期")          
ages = 17          
DoCmd.RunSQL "Insert into student Values (&#39;" & name & "&#39;," & age & ",&#39;" & dates & "&#39;)"
Copier après la connexion

2)修改表中记录

格式: Update 表名 set 字段=数值 Where 限定条件

如:DoCmd.RunSQL "Update student set 年龄=20 Where 姓名='李达'"

3)删除待定记录

格式: Delete from 表名 where 限定条件

如: DoCmd.RunSQL "Delete from student where 姓名='李达'"

3、实现数据完整性约束

1)设置主键

格式: Alter Table 表名 Add Primary Key (字段名)

如:DoCmd.RunSQL "Alter Table 导师 Add Primary Key (导师编号)"

2)设置外键

格式: Alter Table 主表名 Add Foreign Key (字段名) References 从表名

如:DoCmd.RunSQL "Alter Table 研究生 Add Foreign Key (导师编号) References 导师"

4、执行查询操作

VBA程序中可以用SQL命令完成数据查询操作,但是无法直接将查询结果所返回的记录集按数据表的形式显示,解决方法有:

1)将查询结果的返回记录集生成一个新表保存在数据库中,然后用ADO记录集对象对这个表进行各种操作,完成后再删除这个表;

Docmd.runSQL "Select 姓名,职称,年龄  Into temp From 导师 Where 职称 in(&#39;教授&#39;,&#39;副教授&#39;)"
Copier après la connexion

操作.....

   rsTeacher.Close
   Docmd.runSQL "Drop Table temp"
Copier après la connexion

2)将返回的记录集看成保存在内存中的一个临时表,用ADO记录集对象直接打开该查询指令;

访问当前数据库以外的数据库

1、Access提供了Connection.Open方法以连接另一个数据库

2、格式: Connection对象.Open "Provider=提供者;Date Source=数据库名;User ID=用户;PassWord=密码"

3、其中提供者为 Microsoft.Jet.OLEDDB.4.0;数据库名包括 数据库所在的路径(包括.mdb文件名)。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment convertir le pdf Deepseek Comment convertir le pdf Deepseek Feb 19, 2025 pm 05:24 PM

Deepseek ne peut pas convertir les fichiers directement en PDF. Selon le type de fichier, vous pouvez utiliser différentes méthodes: documents communs (Word, Excel, PowerPoint): utilisez Microsoft Office, LibreOffice et d'autres logiciels à exporter sous forme de PDF. Image: Enregistrer sous le nom de PDF à l'aide d'une visionneuse d'image ou d'un logiciel de traitement d'image. Pages Web: Utilisez la fonction "Imprimer en PDF" du navigateur ou l'outil Web dédié à PDF. Formats peu communs: trouvez le bon convertisseur et convertissez-le en PDF. Il est crucial de choisir les bons outils et d'élaborer un plan basé sur la situation réelle.

iOS 18 ajoute une nouvelle fonction d'album 'Récupéré' pour récupérer les photos perdues ou endommagées iOS 18 ajoute une nouvelle fonction d'album 'Récupéré' pour récupérer les photos perdues ou endommagées Jul 18, 2024 am 05:48 AM

Les dernières versions d'Apple des systèmes iOS18, iPadOS18 et macOS Sequoia ont ajouté une fonctionnalité importante à l'application Photos, conçue pour aider les utilisateurs à récupérer facilement des photos et des vidéos perdues ou endommagées pour diverses raisons. La nouvelle fonctionnalité introduit un album appelé "Récupéré" dans la section Outils de l'application Photos qui apparaîtra automatiquement lorsqu'un utilisateur a des photos ou des vidéos sur son appareil qui ne font pas partie de sa photothèque. L'émergence de l'album « Récupéré » offre une solution aux photos et vidéos perdues en raison d'une corruption de la base de données, d'une application d'appareil photo qui n'enregistre pas correctement dans la photothèque ou d'une application tierce gérant la photothèque. Les utilisateurs n'ont besoin que de quelques étapes simples

Comment enregistrer les données JSON dans la base de données dans Golang ? Comment enregistrer les données JSON dans la base de données dans Golang ? Jun 06, 2024 am 11:24 AM

Les données JSON peuvent être enregistrées dans une base de données MySQL à l'aide de la bibliothèque gjson ou de la fonction json.Unmarshal. La bibliothèque gjson fournit des méthodes pratiques pour analyser les champs JSON, et la fonction json.Unmarshal nécessite un pointeur de type cible pour désorganiser les données JSON. Les deux méthodes nécessitent la préparation d'instructions SQL et l'exécution d'opérations d'insertion pour conserver les données dans la base de données.

Comment résoudre le problème de l'interface tiers renvoyant 403 dans l'environnement Node.js? Comment résoudre le problème de l'interface tiers renvoyant 403 dans l'environnement Node.js? Mar 31, 2025 pm 11:27 PM

Résolvez le problème de l'interface tiers renvoyant 403 dans l'environnement Node.js. Lorsque nous utilisons Node.js pour appeler des interfaces tierces, nous rencontrons parfois une erreur de 403 à partir de l'interface renvoyant 403 ...

Pièges de connexion à la base de données PHP : évitez les erreurs et les malentendus courants Pièges de connexion à la base de données PHP : évitez les erreurs et les malentendus courants Jun 05, 2024 pm 10:21 PM

Pour éviter les erreurs de connexion à la base de données PHP, suivez les meilleures pratiques : recherchez les erreurs de connexion et faites correspondre les noms de variables avec les informations d'identification. Utilisez un stockage sécurisé ou des variables d’environnement pour éviter de coder en dur les informations d’identification. Fermez la connexion après utilisation pour empêcher l'injection SQL et utilisez des instructions préparées ou des paramètres liés.

Partage de connexion Laravel Redis: pourquoi la méthode de sélection affecte-t-elle d'autres connexions? Partage de connexion Laravel Redis: pourquoi la méthode de sélection affecte-t-elle d'autres connexions? Apr 01, 2025 am 07:45 AM

L'impact du partage des connexions redis dans Laravel Framework et sélectionnez Méthodes Lors de l'utilisation de Laravel Framework et Redis, les développeurs peuvent rencontrer un problème: grâce à la configuration ...

Comment éviter les interfaces tierces renvoyant 403 erreurs dans l'environnement nœud? Comment éviter les interfaces tierces renvoyant 403 erreurs dans l'environnement nœud? Apr 01, 2025 pm 02:03 PM

Comment éviter l'interface tiers renvoyant 403 erreur dans l'environnement de nœud. Lorsque vous appelez l'interface de site Web tiers à l'aide de Node.js, vous rencontrez parfois le problème de la retournement de l'erreur 403. � ...

Quels sont les avantages du multithreading en C #? Quels sont les avantages du multithreading en C #? Apr 03, 2025 pm 02:51 PM

L'avantage du multithreading est qu'il peut améliorer les performances et l'utilisation des ressources, en particulier pour traiter de grandes quantités de données ou effectuer des opérations longues. Il permet d'effectuer plusieurs tâches simultanément, améliorant l'efficacité. Cependant, trop de threads peuvent conduire à une dégradation des performances, vous devez donc sélectionner soigneusement le nombre de threads en fonction du nombre de cœurs CPU et de caractéristiques de tâche. De plus, la programmation multi-thread implique des défis tels que les conditions de blocage et de race, qui doivent être résolues à l'aide de mécanismes de synchronisation, et nécessite une connaissance solide de la programmation simultanée, pesant les avantages et les inconvénients et les utilisant avec prudence.

See all articles