Python și sqlite

Cum de a afla versiunea motorului sqlite în care a fost creată această bază de date?

Există o bază de date (fișier) de sqlite (de exemplu, fișierul bazei de date se numește sqlitest). Cum de a afla versiunea motorului sqlite în care a fost creată această bază de date?







În primii 16 octeți, este scrisă versiunea bazei de date. În acest caz, versiunea 3.

P.S. Numerele versiunii inferioare și chiar mai mult numerele de construcție din structura fișierului de bază nu afectează.

Valoarea constantelor bazei de date SQlite

apilevel = 2.0 - sqlite suportă DB-API 2.0

paramstyle - tipul de notații folosite la înlocuirea parametrilor. Următoarele valori ale acestei constante sunt posibile:

formatarea formatului în stilul limbii ANSI C (de exemplu, # '% s #', # '% i #')

utilizarea phyformat a specificatorilor de format numiți în stilul Python (# '% (item) s #')

qmark utilizarea caracterelor # '? #' pentru a marca locul pentru înlocuirea parametrilor

numeric utilizând numerele de poziție (# ': 1 #')

numit folosind numele parametrilor substituibile (# ': nume #')

threadsafety este o constantă intreg care descrie capacitățile modulului atunci când utilizează fluxurile de control:

În general, succesiunea de lucru cu baza de date arată astfel:

Diferențele semnificative între SQLite și alte baze de date se află în motorul propriu-zis. Spre deosebire de alte baze de date din SQLite, nu există legare la tipuri; toate datele sunt stocate ca șiruri care se termină cu un caracter NULL, ceea ce este mai bun decât reprezentarea binară a datelor în coloanele de tip special. Din cauza compatibilității, SQLite acceptă tipul de specificație în construcțiile CREATE TABLE, de exemplu, cum ar fi INT, CHAR, FLOAT, TEXT și altele asemenea, dar nu le utilizează cu adevărat. În interiorul bazei de date, SQLite distinge numai între date de tip șir și întreg în timpul sortimentului. Prin urmare, dacă nu veți sorta datele, puteți face acest lucru fără a specifica un tip special de câmpuri atunci când creați tabele în SQLite.







„Natura Beztipovaya“ SQLite face sortarea și compararea datelor într-un mod mai lent, deoarece SQLite de fiecare dată când va trebui să determine tipul de date și se aplică un șir de sortare / mecanism de comparare sau numerică. Tabelele SQL necesită adesea o cheie atribuită automat pentru accesul rapid la celule, adică întoarcerea unui link către ultima celulă adăugată. Pentru SQLite, această sintaxă este inutilă, pentru ao pune ușor. Pentru a crea un astfel de tabel, va trebui să declare domeniul INTEGER cheie primară, care este mai convenabil decât o indicație a unui tip de specialitate sau atribuirea de proprietăți suplimentare, care indică faptul că domeniul este un auto-increment.

Exemplu: crearea bazei de date SQLite

În cazul SQLite, nu trebuie să vă faceți griji cu privire la crearea unei baze de date, fișierul va fi creat automat. Pentru alte baze de date, trebuie mai întâi să creați o bază de date, de exemplu, instrucțiunea SQL CREATE DATABASE).

Crearea din linia de comandă. Să presupunem că avem un fișier dbcreate164.sql care conține textul:

Apoi, baza de date testbdsqlite.db poate fi creată din linia de comandă, o astfel de comandă

Crearea unei baze de date test.db prin CLI SQLite

Crearea din Python







Trimiteți-le prietenilor: