Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk menggunakan pangkalan data SQLite dalam Python
SQL (Bahasa Pertanyaan Berstruktur) ialah bahasa pertanyaan pangkalan data umum. SQL mempunyai definisi data, operasi data dan fungsi kawalan data dan boleh menyelesaikan semua kerja pangkalan data. Apabila menggunakan bahasa SQL, anda hanya perlu memberitahu komputer "apa yang perlu dilakukan" tanpa memberitahunya "bagaimana untuk melakukannya".
Terdapat dua cara untuk menggunakan bahasa SQL Satu ialah menggunakannya secara interaktif dalam mod arahan secara langsung;
Penciptaan dan sambungan pangkalan data sqlite
Penciptaan dan sambungan pangkalan data sqlite dibahagikan kepada tiga langkah:
(1) Modul Import
import sqlite3 #或者: from sqlite3 import dbapi2 #导入sqlite3模块的dbapi2接口模块
(2) Gunakan kaedah sambung untuk mencipta pangkalan data
connection=sqlite3.connect(filename) #filename为数据库文件名,如果该文件存在则打开该数据库,如果不存在则创建一个新的数据库文件。 #该方法返回一个数据库连接对象
(3) Tutup objek sambungan
connection.close() #关闭连接,更新数据库文件
Jadual menyimpan perhubungan dalam pangkalan data Koleksi data Pangkalan data biasanya mengandungi berbilang jadual, seperti jadual pelajar, jadual kelas, jadual guru, dll. Jadual berkaitan melalui kunci asing.
Dalam SQL, struktur sintaks mencipta jadual menggunakan kenyataan cipta adalah seperti berikut:
create table 表名(字段1,…,字段n)
Sebagai contoh, cipta jadual mytb:
create table if not exists mytb( xm char, cj real, kc text )
Nama jadual ialah mytb; JIKA TIDAK WUJUD bermakna jika pangkalan data Jika jadual data mytb tidak wujud, buat jadual jika jadual data sudah wujud, jangan lakukan apa-apa
xm char, cj real, kc text bermakna data itu jadual mempunyai 3 medan, xm ( nama) ialah jenis rentetan, cj(gred) ialah jenis apungan, dan kc(kursus) ialah rentetan teks.
Jenis data yang disokong oleh SQLite3 ialah:
null
(nilai = null), integer
(integer), real
(nombor titik terapung), text
(rentetan literal) ), blob
(blok data binari).
Dalam Python kita boleh menggunakan kaedah execute untuk melaksanakan pernyataan SQL
conn.execute('create table if not exists mytb( xm char, cj real, kc text )')
conn ialah objek sambungan Parameter dalam kaedah execute(). ialah pernyataan SQL. Jenisnya ialah rentetan
(1) Penyataan SQL untuk memasukkan rekod
mempunyai format sintaks berikut:
insert into 表名 [字段名] values [常量]
Contohnya:
insert into Persons values ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')
(2) Gunakan execute() untuk melaksanakan pernyataan SQL
cur.exceute(sql语句)
(3) Serahkan transaksi
conn.commit() #提交事务,将数据写入文件,保存到磁盘中。
Tanya ungkapan yang memenuhi syarat daripada "jadual" "lajur sasaran"
SELECT 目标列 FROM 表 [WHERE 条件表达式]
, contohnya, tanya nama dan umur pelajar di bawah 20 tahun:
select sname age from student where age<20
Contohnya, tanya semua rekod dalam jadual:
select * from student
Kembalikan berbilang rekod (baris), jika tiada hasil, kembalikan kosong ()
Setiap pangkalan data SQLite mempunyai jadual yang dipanggil sqlite_master, Jadual dibuat secara automatik.
sqlite_master ialah jadual khas yang menyimpan maklumat meta pangkalan data, seperti jadual, indeks, paparan dan maklumat yang berkaitan boleh ditanya melalui pilihan.
select name,sql from sqlite_master where type='table'
Pernyataan ini digunakan untuk menanyakan nama jadual data dalam pangkalan data, dan pernyataan SQL untuk mencipta jadual
Pernyataan SQL untuk mengemas kini rekod :
UPDATE 表名 SET 列名=表达式… [WHERE 条件]
Apabila "syarat" adalah benar, tukar nilai lajur kepada "ungkapan". >
Padam rekodJATUHKAN JADUAL dan PADAM kenyataan: (1) Padam semua rekod dalam jadual dataupdate student set cj=90 where xh="001"Sebagai contoh, padam jadual pelajar
DELETE FROM <表名>(2) Padamkan rekod
delete from studentSebagai contoh, padam rekod yang nombor sekolah menengahnya >Contoh latihanTahap 1: Buat dan sambungkan fail pangkalan dataTugas tahap ini: Buat dan sambungkan pangkalan data mytest.db dalam direktori semasa. Analisis Kod
DELETE FROM <表名> WHERE <条件>Tahap 2: Buat jadual dataTugas dalam tahap ini: Buat atau buka contoh jadual data. Analisis kod
delete from student where xh='001'Tahap 3: Masukkan rekodTugas dalam tahap ini: Buat fail pangkalan data sqlite3 mytest.db, dan kemudian buat jadual data mytb.db, pergi ke Sisipkan tiga baris rekod ke dalam jadual. Analisis Kod
DROP TABLE 表名Tahap 4: Rekod PertanyaanTugas tahap ini: Mereka bentuk atur cara untuk menanyakan semua rekod dalam jadual data mytb dalam fail pangkalan data yang sedia ada myfile. db , dan tanya struktur jadual data. Analisis Kod
drop table studentTahap 5: Kemas kini dan padam rekodTugas tahap ini: Kemas kini dan padam rekod dalam pangkalan data sqliteAnalisis Kod
def return_values(): #***********Begin**********# #(1)导入内置sqlite3模块 import sqlite3 #(2)创建conn连接对象(在当前路径下建立mytest.db数据库) conn = sqlite3.connect("mytest.db") #(3)关闭连接 conn.close() #***********End**********#Tahap 6: Operasi komprehensif pangkalan data bukuTugas dalam tahap ini: Cipta pangkalan data mybook.db dalam SQLite buat jadual data mytb dalam pangkalan data: isbn (text ), tajuk buku (teks), harga (sebenar) dan medan lain, dan sisipan rekod. Analisis Kod
#(1)导入sqlite3模块 import sqlite3 #(2)创建conn连接对象,建立mytest.db数据库 conn = sqlite3.connect("mytest.db") #(3)定义sql语句,创建mytb数据表,表中有三个字段xm、cj、kc,其数据类型分别为char、real、text sql_demo = "create table if not exists mytb( xm char , cj real , kc text )" #(4)执行sql语句 conn.execute(sql_demo) #(5)关闭连接 conn.close()
Atas ialah kandungan terperinci Bagaimana untuk menggunakan pangkalan data SQLite dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!