ASP : Connexion et utilisation d'une base Acces
Documentation sur l'ASP
connexion et utilisation d'une base de donnée acces



connection à la BdD :

on travail ici avec le serveur web IIS, pour apache utiliser php et MySLQ :)
    <%
        dim Conn:Set Conn = Server.CreateObject("ADODB.Connection")
        Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};Pwd=password_si_besoin; DBQ=" & Server.MapPath("../chemin/de/la/base.mdb")
    %>

Conn désigne une variable qui représente la base de donnée
ensuite avec Conn.Open on dit la base à la quel on veut se connecter.
Le seul parametre à modifier est : chemin/de/la/base.mdb

si la base de donnée "base.mdb" est dans c:/inetpub/wwwroot/data/base.mdb
<%
    dim Conn:Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};Pwd=password_si_besoin; DBQ=" & Server.MapPath("../data/base.mdb")
%>

ce bout de code est à metre dans un fichier genre : connexion.asp

ensuite dans les fichiers ou tu auras besoin d'utiliser la base de donnée au début tu mettras :
avant le code HTML
<!--#include file="connexion.asp"-->

aperçu de ton arboresence :
/*wwwroot*/
   default.asp
   connexion.asp
   /*data*/
       -base.mdb


Acces requette et acces à la base de donnée

on déclare la variable sql qui va contenir la requette
<%
    sql = "insert into ma_table (id_val, nom_val, prenom_val) values (1, 'MON_NOM','MON_PRENOM')
    conn.execute(sql)
%>

Conn.execute indique que l'on execute la requete ici la variable "sql" sur la base "Conn"
on aurais aussi pu faire : conn.execute("insert into ma_table (id_val......PRENOM')")

ceci va ajouter dans la table "ma_table" la ligne :
1    MON_NOM        MON_PRENOM

voyons une requette avec SELECT
<%
    id=1
    sql = "select * from ma_table where id_val="&id
    set resultat = conn.execute(sql)

    while not resultat.eof
       response.write "nom : "&resultat("nom_val")&"<BR>"
       response.write "nom : "&resultat("prenom_val")&"<BR>"
    wend
%>

explication :
on affect 1 à id
ensuite on cré notre variable SQL et on concatène id à la chaine "select *.....id_val="
dans sql il y a alors : select * from ma_table where id_val=1

ensuite on execute la requette "sql" avec execute sur conn : conn.execute(sql)
et on met le résultat dans la variable resultat avec set resultat

enfin on affiche ce qu'il y a dans la variable resultat
la boucle while not resultat.eof signifie que l'on va bouclé tant qu'il y a quelque chose dans resultat
en fait lors de la requette, resultat a été affecté avec toute les valeurs selectionné par la requette, les résultats sont enregistrer ligne à ligne :
s'il y a 5 lignes sélectionnées par la requette, la variable resultat va ressembler à :

   1    MON_NOM        MON_PRENOM
   2    TON_NOM        TON_PRENOM
   3    SON_NOM        SON_PRENOM
   4    PASdeNOM       PASdePRENOM
   5    RienduTout     IciNonPlus

ensuite a chaque itération du while une ligne est selectionné
on peu acceder au champs, par leur nom dans la table, ici :
id_val    nom_val        prenom_val

par cette instruction : resultat("id_val") va renvoyer id de la ligne en cour de traitement.


dans l'exemple on affiche :
nom : MON_NOM
prenom : MON_PRENOM

il n'y a qu'une seule ligne selectionné puisque l'on a désigné id et un identifiant est unique.

si on avait utilisé la requette :

select * from ma_table

on aurait eu comme résultat :

nom : MON_NOM
prenom : MON_PRENOM

nom : TON_NOM
prenom : TON_PRENOM

nom : SON_NOM
prenom : SON_PRENOM

nom : PASdeNOM
prenom : PASdePRENOM

nom : RienduTout   prenom : IciNonPlus


Voilà si tu as des questions ou quoi que se soit à demander je suis là ;)

.:: Écris par sonique .|. sonique_irc@yahoo.fr ::.
[ 04/2k5 ]


retour