begin process at 2010 02 09 19:25:14
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de Donnees

 > TUTORIAL POUR ADODB, ADO

TUTORIAL POUR ADODB, ADO


 Information sur la source

Note :
8,11 / 10 - par 9 personnes
8,11 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de Donnees Niveau :Débutant Date de création :09/10/2002 Date de mise à jour :10/10/2002 10:44:19 Vu :24 986

Auteur : GuluCom

Ecrire un message privé
Commentaire sur cette source (15)
Ajouter un commentaire et/ou une note

 Description

ce How To ADODB easy est un tutorial destine a aide les + ou - debutants pour se connecter a une DB en utilisant les commandes ADO ( et pas l'ancien DAO)
je l ai ecris en anglais paske je l ai fait pour des amis pas francais et en plus VB c est en anglais

Source

  • ' Welcome to GuLuCoM's How to ADODB easy.
  • ' Please tell me what u think about this How To.... gulucom@hotmail.com
  • ' -> 3 ways to use ADODB :
  • Dim cn As ADODB.Connection
  • Dim rs As ADODB.Recordset
  • Dim cmd As ADODB.Command
  • '------------- Open the Database ----------------
  • Set cn = New ADODB.Connection
  • cn.ConnectionString = " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=TaBaS.mdb;Persist Security Info=False"
  • cn.Open
  • 1.
  • '-------------- Create a Command --------------
  • Set cmd = New ADODB.Command
  • cmd.CommandText = "authors" ' table in the database
  • cmd.CommandType = adCmdTable
  • cmd.ActiveConnection = cn
  • '--------------- Create a Recordset --------------------
  • Set rs = New ADODB.Recordset
  • Set rs.Source = cmd
  • rs.Open
  • 2.
  • Set rs = cn.Execute("select * from Table") ' Execute opens the recordset
  • 3.
  • Set rs = New ADODB.Recordset
  • rs.CursorType = adOpenKeyset
  • rs.LockType = adLockOptimistic
  • rs.Source = "TbEscort"
  • rs.ActiveConnection = cn
  • rs.Open
  • ' Now let's play with our recordset (rs)
  • ' - to add a new row in the recordset :
  • rs.AddNew
  • rs.Fields("First_Name") = x
  • rs.Update
  • ' - to keep the reference of a specific record
  • Dim varBKM as Variant
  • varBKM = rs.Bookmark
  • ' - to move in the recordset
  • rs.MoveNext
  • rs.MoveLast
  • ......
  • ' - to find a specific record
  • rs.Find "worker_name LIKE 'r*'"
  • ' - to filter the recordset
  • rs.Filter = "quantity > 30"
  • ' - to sort the recordset
  • rs.Sort = "order_date ASC"
  • ' - to delete a record
  • rs.Delete adAffectCurrent ' -> default
  • adAffectGroup ' -> after filter
  • adAffectAll
  • ' - to rexecute the query
  • rs.Requery
  • ' - to update a field in the record
  • rs.Update "worker_name", "david"
  • ' - to save the recordset
  • rs.Save "C:/MyRS.adtg", adPersistADTG
  • or with ADO 2.1 rs.Save "C:/MyRS.xml", adPersistXML
  • ' - to open
  • rs.Open "C:/MyRS.adtg", , adOpenStatic, adLockOptimistic, adComdFile
  • ' - NEVER FORGET TO CLOSE
  • rs.Close
  • cn.Close
  • Set rs = Nothing
  • Set cn = Nothing
   
 '          Welcome to GuLuCoM's How to ADODB easy.

 '           Please tell me what u think about this How To....   gulucom@hotmail.com

'    ->  3 ways to use ADODB :

Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim cmd As ADODB.Command


'-------------   Open the Database ----------------
     Set cn = New ADODB.Connection
     cn.ConnectionString = " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=TaBaS.mdb;Persist Security Info=False"
     cn.Open

1.
'--------------  Create a Command --------------
     Set cmd = New ADODB.Command
     cmd.CommandText = "authors"    ' table in the database
     cmd.CommandType = adCmdTable
     cmd.ActiveConnection = cn

'--------------- Create a Recordset --------------------
     Set rs = New ADODB.Recordset
     Set rs.Source = cmd
     rs.Open

2.
     Set rs = cn.Execute("select * from Table")    ' Execute opens the recordset

3.
   
     Set rs = New ADODB.Recordset
     rs.CursorType = adOpenKeyset
     rs.LockType = adLockOptimistic
     rs.Source = "TbEscort"
     rs.ActiveConnection = cn
     rs.Open


 '	Now let's play with our recordset (rs)
 
  ' - to add a new row in the recordset :

     rs.AddNew
     rs.Fields("First_Name") = x
     rs.Update

  ' - to keep the reference of a specific record
     Dim varBKM as Variant
     varBKM = rs.Bookmark

 '  - to move in the recordset
     rs.MoveNext
     rs.MoveLast
     ......
   
  ' - to find a specific record
     rs.Find "worker_name LIKE 'r*'"

  ' - to filter the recordset
     rs.Filter = "quantity > 30"

  ' - to sort the recordset
     rs.Sort = "order_date ASC"

  ' - to delete a record
     rs.Delete adAffectCurrent   ' -> default
               adAffectGroup         ' -> after filter
               adAffectAll

  ' - to rexecute the query
     rs.Requery

  ' - to update a field in the record
     rs.Update "worker_name", "david"

  ' - to save the recordset
     rs.Save "C:/MyRS.adtg", adPersistADTG
     or with ADO 2.1 rs.Save "C:/MyRS.xml", adPersistXML

  ' - to open 
     rs.Open "C:/MyRS.adtg", , adOpenStatic, adLockOptimistic, adComdFile

  ' - NEVER FORGET TO CLOSE 	
     rs.Close
     cn.Close
     Set rs = Nothing
     Set cn = Nothing


 



 Sources du même auteur

Source avec Zip DB-> CD_SHOP MANAGER

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) DATA ACCESS COMPONENT par zaimfaycal
Source avec Zip GESTION ENSEIGNANTS par Elmarzougui
Source avec Zip GESTION D'UNE BIBLIOTHÈQUE par Elmarzougui
Source avec Zip VISUALISATION BASE ACCESS par claude440
Source avec Zip SUPER MONEY par MdelM

Commentaires et avis

Commentaire de BasicInstinct le 09/10/2002 22:55:11

C'est pas mal, clair et precis.

Commentaire de minipod le 09/10/2002 22:59:46

excellent ! tout juste ce dont j'avais besoin !

Commentaire de devsurf le 16/11/2002 12:40:56

Trés pedagogique, merci
Juste une question : Comment fait on sur adodb pour connaitre la liste des tables dans un fichier
merci
devsurf@hotmail.com

Commentaire de CapDeBoro le 31/12/2002 09:32:47

Adiu

Merci pour ce tutorial qui me facilite grandement le travail.

J'ai cependant une difficulté dans l'utilisation de "AddNew" : Si je n'utilise pas la méthode lourde  (#3) pour la déclaration du RecordSet, j'obtiens un message d'erreur "Le jeu d'enregistrement suivant ne prend pas en charge la mise à jour ...". Existe-t-il dans Access la case à cocher magique qui me permette d'utiliser la méthode légère (cn.execute) sans message d'erreur ?

Merci d'avance
Cap de Boro

Commentaire de hassanvb6 le 02/03/2003 21:47:23

Salut

l'instruction find fait une recherhce séquentiel enrg/enrg..., peut-on parler d'index avec le model ADO ?

réponse souhaité...., et merçi d'avance

Commentaire de SeeNapse le 16/03/2003 12:08:21

Super ce tutorial, il m'a énormement aidé quand j'étais dans l'impasse.
Encore merci. 9/10

Commentaire de ferailleur le 15/02/2004 17:06:42

Bonjour,
comment fait on pour afficher dans un grid le resultat d'une requête executé via adobc ?
ps je suis un grand débutant soyez indulgent    
merci

Commentaire de Nightmoo le 13/05/2004 09:53:50

Sa claretée est très intéressante malgrès le manque de commentaires.

Mais j'ai un problème avec cette cource :

Dim cn As ADODB.Connection
Message d'erreur : Type définit par l'utilisateur non définit (User-defined type not defined)

Je ne comprend pas par ce que j'ai pourant activer le fichier Ms DAO 3.5 Object Library.

Commentaire de Nightmoo le 13/05/2004 09:55:00

Sa claretée est très intéressante malgrès le manque de commentaires.

Mais j'ai un problème avec cette cource :

Dim cn As ADODB.Connection
Message d'erreur : Type définit par l'utilisateur non définit (User-defined type not defined)

Je ne comprend pas par ce que j'ai pourant activer le fichier Ms DAO 3.5 Object Library.

Commentaire de CapDeBoro le 13/05/2004 11:40:37

C'est normal, "Data Access Object" est différent de "ActiveX Data Objects". DAO est l'ancien système, en voie de disparition.

Cordialement

Cap de Boro

Commentaire de JMART53 le 31/03/2005 17:58:48

Super code source.
Néanmoins j'ai un petit problème avec la fonction find.
rs.Find "worker_name LIKE 'r*'" fonction correctement.
Mais si dans mon find j'ai deux élément cela ne fonctionne pas.

Exemple rs.find "name = 'toto' and last_name = 'titi'"

Merci d'avance
j.martin@groupe-seche.com

Commentaire de poy20 le 04/02/2006 20:22:20

Salut ! je suis novice, et j'ai moi aussi un problème avec  ADODB.Connection. On m'affiche "type non défini".
D'après ce que j'ai lu plus haut, il faut activer des fichiers ("ActiveX Data Objects"), mais, je ne sais pas comment faire...

Je suis sous VB 2005 express, si qq'un pouvait m'aider !? Merci !

Commentaire de cam360 le 21/04/2006 13:54:16

Bonjour. J'ai exactement le même problème et je ne trouve aucune solution pour y remédier. Impossible de trouver comment lier une référence. Je suis sous Microsoft Visual Basic 6.3.
Merci d'avance

Commentaire de loreleimimi le 25/07/2006 12:27:39

Bonjour,

voici mon code :

Mon problème est le suivant, le message "runtime error 3251 : le fournisseur actuel ne prend pas en charge l'interface nécessaire pour le tri ou le filtrage". Pourriez vous me dire pourquoi.

--------------------------------------

Dim conn As ADODB.Connection
Dim rs As ADODB.RecordSet

'ACCES A LA BASE DE DONNEES
Set conn = New ADODB.Connection
conn.ConnectionString = " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=U:\PI\SPC\Lien vers InSQL.mdb;Persist Security Info=False"
conn.Open
Set rs = New ADODB.RecordSet

Dim sql As String
'
sql = "SELECT * FROM Table_Batch"
'
'rs.Open sql, conn, adOpenKeyset, adLockPessimistic

Set rs = New ADODB.RecordSet
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic
rs.Source = sql
rs.ActiveConnection = conn
rs.Open


'rs.MoveFirst
rs.Sort = "Grade ASC"

------------------------------------------

Merci.

Commentaire de AdCr le 31/10/2006 20:11:41

Interresant, bon tutorial ...

Est-il possible d'assigner la valeur NULL a un champs, un truc du genre
# rs.Fields("First_Name") = NULL
# rs.Update

J'ai pas mal cherché sur le web, rien trouvé

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,546 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales