Python SQLite - บทนำ
การติดตั้ง
SQLite3 สามารถรวมเข้ากับ Python โดยใช้โมดูล sqlite3 ซึ่งเขียนโดย Gerhard Haring มีอินเทอร์เฟซ SQL ที่สอดคล้องกับข้อกำหนด DB-API 2.0 ที่อธิบายโดย PEP 249 คุณไม่จำเป็นต้องติดตั้งโมดูลนี้แยกต่างหากเนื่องจากมีการจัดส่งโดยค่าเริ่มต้นพร้อมกับ Python เวอร์ชัน 2.5.x เป็นต้นไป
ในการใช้โมดูล sqlite3 ก่อนอื่นคุณต้องสร้างวัตถุการเชื่อมต่อที่แสดงถึงฐานข้อมูลจากนั้นคุณสามารถสร้างวัตถุเคอร์เซอร์ซึ่งจะช่วยคุณในการเรียกใช้คำสั่ง SQL ทั้งหมด
Python sqlite3 โมดูล API
ต่อไปนี้เป็นรูทีนโมดูล sqlite3 ที่สำคัญซึ่งสามารถเพียงพอต่อความต้องการของคุณในการทำงานกับฐานข้อมูล SQLite จากโปรแกรม Python ของคุณ หากคุณกำลังมองหาแอปพลิเคชันที่ซับซ้อนมากขึ้นคุณสามารถดูเอกสารอย่างเป็นทางการของโมดูล Python sqlite3
ซีเนียร์ | API และคำอธิบาย |
---|---|
1 | sqlite3.connect(database [,timeout ,other optional arguments]) API นี้เปิดการเชื่อมต่อกับไฟล์ฐานข้อมูล SQLite คุณสามารถใช้ ": memory:" เพื่อเปิดการเชื่อมต่อฐานข้อมูลกับฐานข้อมูลที่อยู่ใน RAM แทนบนดิสก์ หากเปิดฐานข้อมูลสำเร็จจะส่งคืนวัตถุการเชื่อมต่อ |
2 | connection.cursor([cursorClass]) กิจวัตรนี้จะสร้างไฟล์ cursorซึ่งจะใช้ตลอดการเขียนโปรแกรมฐานข้อมูลด้วย Python วิธีนี้ยอมรับ cursorClass พารามิเตอร์ทางเลือกเดียว หากให้มาต้องเป็นคลาสเคอร์เซอร์ที่กำหนดเองที่ขยาย sqlite3.Cursor |
3 | cursor.execute(sql [, optional parameters]) รูทีนนี้รันคำสั่ง SQL คำสั่ง SQL อาจถูกกำหนดพารามิเตอร์ (เช่นตัวยึดแทนตัวอักษร SQL) โมดูล sqlite3 รองรับตัวยึดตำแหน่งสองประเภท: เครื่องหมายคำถามและตัวยึดตำแหน่งที่ระบุชื่อ (สไตล์ที่ระบุชื่อ) For example - cursor.execute ("แทรกลงในค่าผู้คน (?,?)", (ใครอายุ)) |
4 | connection.execute(sql [, optional parameters]) รูทีนนี้เป็นทางลัดของวิธีการดำเนินการข้างต้นที่มีให้โดยวัตถุเคอร์เซอร์และจะสร้างวัตถุเคอร์เซอร์กลางโดยเรียกวิธีการเคอร์เซอร์จากนั้นเรียกวิธีการดำเนินการของเคอร์เซอร์ด้วยพารามิเตอร์ที่กำหนด |
5 | cursor.executemany(sql, seq_of_parameters) รูทีนนี้เรียกใช้คำสั่ง SQL กับลำดับพารามิเตอร์หรือการแม็พทั้งหมดที่พบในลำดับ sql |
6 | connection.executemany(sql[, parameters]) รูทีนนี้เป็นทางลัดที่สร้างวัตถุเคอร์เซอร์กลางโดยการเรียกใช้วิธีเคอร์เซอร์จากนั้นเรียกวิธีการดำเนินการเคอร์เซอร์หลายวิธีด้วยพารามิเตอร์ที่กำหนด |
7 | cursor.executescript(sql_script) รูทีนนี้เรียกใช้คำสั่ง SQL หลายคำสั่งพร้อมกันในรูปแบบของสคริปต์ มันออกคำสั่ง COMMIT ก่อนจากนั้นเรียกใช้สคริปต์ SQL ที่ได้รับเป็นพารามิเตอร์ คำสั่ง SQL ทั้งหมดควรคั่นด้วยเซมิโคลอน (;) |
8 | connection.executescript(sql_script) รูทีนนี้เป็นทางลัดที่สร้างวัตถุเคอร์เซอร์กลางโดยเรียกวิธีการเคอร์เซอร์จากนั้นเรียกเมธอด executescript ของเคอร์เซอร์ด้วยพารามิเตอร์ที่กำหนด |
9 | connection.total_changes() รูทีนนี้จะส่งคืนจำนวนแถวฐานข้อมูลทั้งหมดที่ถูกแก้ไขแทรกหรือลบไปตั้งแต่เปิดการเชื่อมต่อฐานข้อมูล |
10 | connection.commit() วิธีนี้ทำธุรกรรมปัจจุบัน หากคุณไม่เรียกวิธีนี้สิ่งที่คุณทำตั้งแต่การเรียกครั้งสุดท้ายเพื่อกระทำ () จะมองไม่เห็นจากการเชื่อมต่อฐานข้อมูลอื่น |
11 | connection.rollback() วิธีนี้ย้อนกลับการเปลี่ยนแปลงใด ๆ ในฐานข้อมูลตั้งแต่การเรียกครั้งสุดท้ายเพื่อกระทำ () |
12 | connection.close() วิธีนี้จะปิดการเชื่อมต่อฐานข้อมูล โปรดทราบว่าสิ่งนี้ไม่ได้เรียกใช้การกระทำ () โดยอัตโนมัติ หากคุณเพียงแค่ปิดการเชื่อมต่อฐานข้อมูลโดยไม่เรียกคอมมิต () ก่อนการเปลี่ยนแปลงจะหายไป |
13 | cursor.fetchone() วิธีนี้ดึงข้อมูลแถวถัดไปของชุดผลลัพธ์คิวรีส่งคืนลำดับเดียวหรือไม่มีเมื่อไม่มีข้อมูลเพิ่มเติม |
14 | cursor.fetchmany([size = cursor.arraysize]) รูทีนนี้ดึงข้อมูลชุดถัดไปของผลลัพธ์คิวรีโดยส่งคืนรายการ รายการว่างจะถูกส่งกลับเมื่อไม่มีแถวเพิ่มเติม วิธีนี้พยายามดึงข้อมูลหลายแถวตามที่ระบุโดยพารามิเตอร์ขนาด |
15 | cursor.fetchall() รูทีนนี้ดึงข้อมูลแถวทั้งหมด (ที่เหลือ) ของผลลัพธ์คิวรีโดยส่งคืนรายการ รายการว่างจะถูกส่งกลับเมื่อไม่มีแถว |