如何使用Python修改SQLite表?
修改SQLite表是資料庫操作中的常見任務,使用Python可以輕鬆完成。SQLite是一個著名的開源關係資料庫管理系統,用於將資料儲存在本地檔案中。在本文中,我們將學習如何使用ALTER TABLE命令在Python中修改SQLite表,以向現有表中新增、編輯或刪除列。
我們將逐步介紹必要的步驟,包括建立與SQLite資料庫的連線、建立遊標物件、執行ALTER TABLE語句、提交更改以及關閉資料庫連線。
SQLite
Python中的SQLite指的是Python的SQLite模組,它提供了一個介面,用於從Python程式訪問SQLite資料庫。SQLite是一個廣泛使用的開源關係資料庫管理系統。它用於將資料儲存在本地檔案中,佔用空間小,非常適合小型到中型應用程式。
Python的SQLite模組提供了一種簡單的方法來處理SQLite資料庫,允許開發人員直接從他們的Python程式碼中修改、建立和查詢SQLite資料庫。SQLite模組預裝在Python中,使許多開發人員易於使用和訪問。由於其佔用空間小且易於使用的介面,SQLite廣泛用於Web和移動應用程式以及小型到中型專案。
匯入模組
要在Python中匯入SQLite模組,請在編輯器中複製以下程式碼:
import sqlite3
sqlite3模組是Python標準庫的一部分,並預裝在Python中。它提供了一個介面,用於從Python程式碼訪問SQLite資料庫。
現在已經匯入了sqlite3模組,我們可以使用sqlite3函式和類與SQLite資料庫進行互動,包括建立資料庫連線、檢索資料和執行SQL命令。
使用Python修改SQLite表的步驟
要修改SQLite表,我們需要使用ALTER TABLE語句。此語句允許我們向現有表中新增、修改或刪除列。我們可以使用Python SQLite模組執行此語句。
我們使用Sublime Text作為文字編輯器,所有輸出都將在執行特定Sublime Python檔案時顯示在終端視窗中。
以下是使用Python修改SQLite表的步驟。
步驟1
建立一個具有.py副檔名的檔案。匯入sqlite模組。
import sqlite3
步驟2
下一步是使用Python中sqlite3模組提供的connect()方法連線到SQLite資料庫。此方法將資料庫檔案的路徑作為引數,並返回一個Connection物件。
conn=sqlite3.connect('database_name.db')
步驟3
下一步是使用Connection物件提供的cursor()方法建立一個遊標物件。遊標物件用於對資料庫執行SQL語句。
c= conn.cursor()
步驟4
下一步是建立一個新表,並使用遊標物件的execute()方法執行它。該語句將表名作為引數,並定義表中所需的列名及其資料型別。
c.execute(""CREATE TABLE table_name(column names with there datatypes)"")
步驟5
下一步是將值插入表中,並使用遊標物件的execute()方法執行它。
c.execute("INSERT INTO table_name VALUES (enter the values that you want to provide to the colummns of the table)")
步驟6
現在,我們將修改表並對其進行一些更改之前,先從表中獲取所有行。我們將使用遊標物件的execute()和fetchall()方法來獲取表中的所有行。
c.execute("SELECT * FROM table_name") print(c.fetchall())
步驟7
ALTER TABLE命令將在這一步執行。要修改表,請使用遊標物件的execute()函式執行ALTER TABLE命令。作為引數,這些語句接受表名和要更新的列。例如,要向表中新增新列,可以使用以下語句:
c.execute("ALTER TABLE table_name ADD COLUMN column_name datatype")
步驟8
現在,在修改表並對其進行一些更改之後,我們將從表中獲取所有行。我們將使用遊標物件的execute()和fetchall()方法來獲取表中的所有行。
c.execute("SELECT * FROM table_name") print(c.fetchall())
步驟9
執行ALTER TABLE語句後,我們需要使用Connection物件的commit()方法提交更改。
conn.commit()
步驟10
最後,我們需要使用Connection物件的close()方法關閉資料庫連線。
conn.close()
讓我們來看一個例子,以便更好地理解它:
示例
import sqlite3 conn=sqlite3.connect('cust.db') #create a cursor c= conn.cursor() #create a table c.execute("""CREATE TABLE customers_table (first_name text,last_name text,email text)""") #insert values in the columns of the table c.execute("INSERT INTO customers_table VALUES ('Mary','Dakota','mdakota@gmail.com')") c.execute("INSERT INTO customers_table VALUES ('Amy','Jackson','ajackson@gmail.com')") #Printing all the values before altering the table print("Table before using ALTER ..") c.execute("SELECT * FROM customers_table") print(c.fetchall()) #Alter the table c.execute("ALTER TABLE customers_table ADD COLUMN UserName CHAR(25)") #Print the table after altering print("Table after using ALTER ..") c.execute("SELECT * FROM customers_table") print(c.fetchall()) print("Command executed successfully...") conn.commit() #close our connection conn.close()
輸出
結論
總之,使用Python修改SQLite表是一個簡單的過程。我們可以使用ALTER TABLE語句向現有表中新增、刪除或修改列。按照上述步驟,我們可以輕鬆地使用Python修改SQLite表。