Asp - lucrează cu baze de date

Poate că nici un site serios nu poate face fără baze de date. Fie că este vorba despre forum, cărți de oaspeți sau chiar despre chat, bazele de date sunt peste tot, sunt convenabile și practice, deși, desigur, la fel ca toată lumea din lumea noastră, au deficiențe, dar nu este problema acum. ASP (Active Server Page) pentru a lucra cu bazele de date utilizează biblioteca ADO (ActiveX Data Objects), care este inclusă în setul de componente 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 'declară 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.

Și acum, baza de date este atașată de noi, este deschisă și gata, ca să spunem așa, să luptăm. Pentru a lucra cu date, obiectul Recordset este utilizat. A Recordset este creat, precum și 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 linia 10, variabila strSQL este declarată, avem nevoie de ea pentru a crea o interogare SQL, deși putem face fără ea, dar veți fi de acord, este mult mai convenabil decât inserarea interogării SQL direct în metoda Open.

Î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, va rezulta o buclă infinită, care, așa cum înțelegeți, va provoca suspendarea programului ASP.

După finalizarea lucrului cu tabela de date, Recordset, în cazul în care nu mai este necesar, se recomandă închiderea acestuia. Setul de înregistrări este închis prin metoda Close:







Articole similare

Trimiteți-le prietenilor: