| |
[ 20. October 1999]
- Jany_Masaryk
ASP a spoluprßca s databßzou - 7.Φas¥ ASP
Tßto Φast nßÜho serißlu o ASP nßm ukß₧e ako pomocou ODBC a VBScriptu (technol≤giou ASP) pracova¥ s databßzami.
To ako funguje ODBC sme si vysvetlili v Φasti predchßdzaj·cej. ╧alej treba podotkn·¥, ₧e sa budeme zaobera¥
spoluprßcou s databßzami relaΦn²mi (napr.: SQL Server, MS Access, PostgreSQL, MySQL, ...).
Najpou₧φvanejÜou cestou ako pracova¥ s dßtami v databßze pomocou ASP je vyu₧itie komponenty ActiveX Data Objects
(ADO). Vyu₧φvanφm objektov, v nej obsiahnut²ch, budeme Φφta¥ a zapisova¥ do databßzy prostrednφctvom ODBC.
Spojenie s databßzou
Na to aby sme mohli pracova¥ s databßzou, musφme najprv vytvori¥ spojenie. To sa vytvßra pomocou objektu Connection.
<%
' Deklarovanie premennej
Dim oConn
' Vytvorenie objektu spojenia
Set oConn = Server.CreateObject("ADODB.Connection")
' Otvorenie spojenia
oConn.Open "meno zdroja dat ODBC", "uzivatel", "heslo"
' Zatvorenie spojenia
oConn.Close
' ZruÜenie objektu spojenia
Set oConn = Nothing
%>
Dopor·Φam, otvßra¥ a zatvßra¥ spojenie na jednej stranke. Ak toti₧ dan² objekt nezniΦφme, pri opΣtovnom vytvorenφ spojenia
sa vytvorφ objekt nov², Φo m⌠₧e vies¥ k postupnΘmu zr·teniu WWW servera.
Prßca s dßtami
Na prßcu s dßtami v databßze sa pou₧φvaj· prφkazy jazyka SQL. Tie m⌠₧eme rozdeli¥ do dvoch zßkladn²ch kateg≤rii :
- vykonavacie - INSERT, UPDATE
- dotazovacie - SELECT
Vykonavacie
Vykonßvaj· sa jednoducho met≤dou objektu Connection.
oConn.Execute ("vykonßvacφ prikaz")
Dotazovanie
Dotazovanie prebieha tak, ₧e najprv vytvorφme objekt RecordSet. Pri otvorenφ zarove≥ definujeme SELECT dotaz.
Potom k v²sledkom dotazu pristupujeme cez met≤dy objektu. Ako prφklad budeme pristupova¥ k tabu╛ke User_Data,
priΦom vypiseme vÜetkych u₧φvate╛ov :
User_ID |
User |
01 |
Jan |
02 |
Joseph |
<%
' Deklarovanie premennej
Dim oRcSet
' Vytvorenie objektu RecordSet
Set oRcSet = Server.CreateObject("ADODB.Recordset")
' Otvorenie objektu RecordSet
oRcSet.Open "SELECT * FROM User_Data", oConn
If (oRcSet.EOF = True) Then
Response.Write("Neexistuje uzivatel")
Else
oRcSet.MoveFirst
Do Until oRcSet.EOF
Response.Write(oRcSet.Field("User"))
rcSet.MoveNext
Loop
End If
' Zatvorenie RecordSetu
oRcSet.Close
' ZruÜenie objektu RecordSetu
Set oRcSet = Nothing
%>
Tak a toto je zatial koniec naÜho milΘho miniserialu o ASP. Ak mßte nejakΘ nejasnosti a otßzky, prosφm nevßhajte a
kontaktujte ma na jan_masaryk@yahoo.com, alebo eÜte lepÜie urobφte ke∩ navÜtφvite naÜe diskusnΘ f≤rum na adrese :
http://forum.developer.sk, tΘmu ASP a zverφte sa nßm s VaÜimi problΘmami a sk·senos¥ami.
|
|
| |
|
"ASP a spoluprßca s databßzou - 7.Φas¥ ASP" | Login / vytvor konto | 2 Komentßrov |
|
Za obsah komentßrov je zodpovedn² u₧φvate╛, nie prevßdzkovate╛ t²chto strßnok. |
Re: ASP a spoluprßca s databßzou - 7.Φas¥ ASP (Sk≤re: 0) k²m: Anonym d≥a 03. April 2001 | no kedy u₧ bude dalÜφ diel ja Φakßm a zdß sa mi to dlho. |
[ Odpove∩ ] Re: ASP a spoluprßca s databßzou - 7.Φas¥ ASP (Sk≤re: 1) k²m: nasinec d≥a 02. June 2001 (Informßcia o u╛φvate╛ovi) | Dovolte doplnenie tejto temy:
Ja som si zvykol pouzivat .udl subor na vyvtorenie spojenia na databazu. Robi sa to tak, ze si vytvorim prazdny .txt subor (najlepsie v C:WINNTsystem32), premenujem ho na MojaAplikacia.udl, dvakrat nanho kliknem a wizard mi pekne vytvori connection. Potom v kode pouzijem:
objConn.Open "FILE Name=C:WINNTsystem32" & MojaAplikacia.udl
ma to tu vyhodu, ze ked prenasam aplikaciu na iny server, nemusim komponentu prekompilovavat kvoli heslu pripojenia na db.
Samozrejme ma to velku vyhodu, ze sa nepomylim pri vytvarani connection string. Pouzitelnost aj v cisto asp strankach, nielen v komponente. |
[ Odpove∩ ] |