Asp - lucreaza cu baze de date - asp, acces microsoft - articole despre programare (alexey nemiro)

ASP - Lucrul cu bazele de date

Poate că nici un site serios nu poate face fără baze de date. Fie că este un forum, carte de oaspeti sau chat, baze de date peste tot, ele sunt confortabile și practice, dar, desigur, la fel ca orice altceva în lumea noastră, au propriile lor dezavantaje, dar nu este vorba despre asta. ASP (Active Server Page) pentru a lucra cu baze de date folosind ADO (ActiveX Data Objects), care face parte dintr-un set de bibliotecă MDAC (Microsoft Data Access Components - puteți găsi pe site-ul Microsoft). În acest articol, voi vorbi despre utilizarea ADO pentru a dezvolta aplicații ASP.







Înainte de a începe să lucrați direct cu datele, trebuie mai întâi să "conectați" baza de date. Conectarea bazei de date se face prin obiectul Connection al bibliotecii ADO.
Puteți crea un obiect Connection utilizând metoda CreateObject a obiectului Server:

Dim Conn 'declara o variabilă pentru conexiune

'crea un obiect Connection

Setați Conn = Server. CreateObject ("ADODB.Connection")

În a treia linie din variabila Conn, proprietățile obiectului Connection sunt transferate.

După crearea obiectului Conectare, trebuie să deschideți baza de date în sine, aceasta se face folosind metoda Open:

dbpath = Server. MapPath ("my.mdb")

Conn. Deschideți "Provider = Microsoft.Jet.OLEDB.4.0; Data Source =" dbpath

În linia 4, variabila dbpath este declarată, apoi, în linia 5, îi este atribuită locația reală a paginii ASP pe server și numele fișierului de bază de date este my.mdb.

Așa că, acum baza de date este atașată la noi, este deschisă și gata, ca să spunem așa, să luptăm. Pentru a lucra cu date, obiectul Recordset este utilizat. Se creează un set de înregistrări precum și o conexiune:

Dim RS "declară o variabilă pentru Recordset

'crea un obiect Recordset

Setați RS = Server. CreateObject ("ADODB.Recordset")

În linia a 9-a a variabilei RS, proprietățile obiectului Recordset sunt transmise.

Toate operațiile cu baza de date se efectuează prin interogări SQL. SQL (Language Structured Query Language) este limba universală a interogărilor structurate pentru lucrul cu bazele de date, despre care nu au fost deja scrise câteva articole și chiar cărți. În acest articol, SQL va fi luat în considerare numai în cadrul scopului articolului.







Pe lângă conexiune, Recordset trebuie să fie deschis, pentru care se folosește și metoda Open:

Dim strSQL "declară o variabilă pentru interogarea SQL

strSQL = "SELECT * FROM tblMain" din interogarea SQL

RS. Deschideți strSQL, Conn 'deschideți Recordset-ul

În al 10-lea linia declară o variabilă strSQL, avem nevoie de ea pentru a genera SQL-interogare, dar puteți face fără ea, dar veți fi de acord, mult mai convenabil decât SQL-interogare încorpora în mod direct la Open metoda.

În linia a 11-a, de fapt, există cererea în sine. Comanda SELECT este cea mai frecvent folosită instrucțiune, vă permite să obțineți date dintr-o masă, în cazul nostru toate datele din tabel sunt tblMain. Când lucrați cu Recordset, alte comenzi SQL nu sunt utilizate în mod normal.

În linia a 12-a, metoda Open deschide Recordset-ul cu interogarea SQL definită anterior în baza de date Conn deja deschisă.

Pentru a verifica disponibilitatea datelor în baza de date, puteți utiliza metoda BOF și EOF pentru obiectul Recordset:

Dacă RS. BOF = adevărat sau RS. EOF = True Atunci nu există date

Răspuns. Scrie ("
datele nu sunt disponibile
„)

Alte date sunt

RS. MoveLast "treceți la ultima înregistrare

RS. MoveFirst "mergeți la prima înregistrare

Răspuns. Scrie ("înregistrări totale în baza de date:" _

RS. RecordCount "
„)

În timp ce nu RS. EOF "sortează toate înregistrările

"verificați dacă se ajunge la sfârșitul bazei de date

"Dacă da, atunci părăsim ciclul

Dacă RS. BOF = adevărat sau RS. EOF = Adevărat apoi ieși

"date de ieșire din câmpul id și nume

Răspuns. Scrie (RS. Fileds ("id") "
„)

Răspuns. Scrieți (câmpuri RS ("nume") "
„)

"nu uitați să întoarceți datele

În al 13-lea rând, este verificată disponibilitatea datelor în tabela de baze de date. În cazul în care valoarea este True, atunci în linia a 14-a este afișată inscripția: "lipsesc datele".

Scrieți Adevărat, în principiu, nu este necesar, pur și simplu scrieți: "Dacă RS.BOF sau RS.EOF Apoi" - rezultatul va fi același.

Dacă există date în tabel, apoi în rândurile 16-17 folosind MoveLast și MoveFirst, Recordset merge la ultima și prima înregistrare. Acest lucru este necesar pentru a determina cu exactitate numărul de înregistrări din baza de date. Numărul de înregistrări este returnat de metoda RecordCount în 18-19 linii.

Din linia 20 până la cea de-a 29-a, rezultă datele din câmpurile "id" și "name".

Acordați o atenție deosebită liniei a 28-a. În absența metodei MoveNext, obținem o buclă infinită, care, după cum înțelegeți, va provoca suspendarea programului ASP.

După finalizarea lucrului cu tabela de date, Recordset, dacă nu mai este necesar, este recomandat să îl închideți. Setul de înregistrări este închis prin metoda Close:







Articole similare

Trimiteți-le prietenilor: