Table of Contents

DBOpen (Instrucțiune)

Engleză: Data Base = bază de date; to OPEN = a deschide

Format

dbopen nume_fișier
dbopen ( nume_fișier )
dbopen număr_bază_de_date , nume_fișier
dbopen ( număr_bază_de_date , nume_fișier )

Descriere

Deschide o bază de date (SQLite) care e în fapt un fișier în care sunt stocate informațiile. Dacă fișierul nu există, îl creează.

Parametri

nume_fișier - este un șir_de_caractere și reprezintă numele fișierului care conține baza de date. În cazul în care fișierul nu există, instrucțiunea îl va crea. Dacă se folosește un șir de caractere gol (“”), atunci nu va fi creat un fișier, ci baza de date va fi creată și stocată pe cât posibil în memorie. Dacă baza de date devine prea mare, atunci poate fi creat un fișier temporar, dar care va fi șters odată ce baza de date va fi închisă. Pentru a forța sistemul să nu creeze niciun fișier, atunci se poate folosi numele: “:memory:”.

număr_bază_de_date - este un număr_întreg și reprezintă numărul bazei de date. BASIC-256 poate lucra cu până la 8 baze de date deschise în același timp. Fiecărei baze de date deschise i se alocă un număr unic, cuprins între 0 și 7. Odată ce o bază de date este închisă, numărul ei devine disponibil pentru a fi alocat altor baze de date (a se vedea funcția FreeDB ). Dacă nu se specifică niciun număr pentru baza de date, numărul 0 va fi folosit. Dacă numărul indicat este deja folosit de o altă bază de date deschisă, acesta din urmă va fi închisă.

Exemplu

#baza de date - crează o bază de date, populează un tabel, deschide un set de înregistrări și citește date dintr-un tabel.
# crează și deschide un fișier conținând o bază de date
dbopen "dbtest.sqlite3"
# șterge vechiul tabel 'foo' - și tratează o eventuală eroare
onerror errortrap
dbexecute "drop table foo;"
offerror
# crează tabelul și populează cu câteva date
dbexecute "create table foo (id integer, words text, value decimal);"
dbexecute "insert into foo values (1,'unu',3.14);"
dbexecute "insert into foo values (2,'doi',6.28);"
dbexecute "insert into foo values (3,'trei',9.43);"
# deschide un set de înregistrări și trece prin toate rândurile de date
dbopenset "select * from foo order by words;"
while dbrow()
	print dbint(0) + " " + dbstring(1) + " " + dbfloat(2)
end while
dbcloseset
# închide totul
dbclose
end
errortrap:
# acceptă eroarea fără a o afișa pe ecran și continuă programul de unde a fost întrerupt
return

va afișa

2 doi 6.28
3 trei 9.43
1 unu 3.14

Vezi și

2016/01/01 22:49

Legături externe

Mai multe informații despre bazele de date în general și despre SQLite pot fi găsite la SQLite Home Page (EN), SQL pe Wikipedia (EN) sau SQLite pe Wikipedia (RO).

Istoric

0.9.6yAdăugată în acestă versiune
0.9.9.19S-a adăugat posibilitatea de a lucra cu 8 baze de date în același timp