Python - AI 助手

Python SQLite 遊標 cursor.executemany() 函式



Python 的 cursor.executemany() 函式使用不同的引數多次執行資料庫操作。這對於插入或更新資料庫非常高效。

遊標是一個用於與資料庫互動的物件。它允許執行 SQL 查詢、檢索資料以及管理從檢索操作中獲得的資料。我們使用 connection.cursor() 建立遊標,並使用 cursor.close() 函式關閉它。

Execute 執行單個 SQL 查詢,用於 INSERT、UPDATE 或 DELETE 等 SQL 操作。

語法

以下是 cursor.executemany() 函式的語法。

cursor.executemany(sql, seq_of_parameters)

引數

每個引數序列包含 SQL 查詢單個執行的值。

返回值

此函式返回使用不同引數執行的多個操作。

示例

考慮以下 EMPLOYEES 表,其中儲存了員工 ID、姓名、年齡、薪資、城市和國家/地區 -

ID 姓名 年齡 薪資 城市 國家/地區
1 Ramesh 32 2000.00 Maryland USA
2 Mukesh 40 5000.00 New York USA
3 Sumit 45 4500.00 Muscat Oman
4 Kaushik 25 2500.00 Kolkata India
5 Hardik 29 3500.00 Bhopal India
6 Komal 38 3500.00 Saharanpur India
7 Ayush 25 3500.00 Delhi India

示例 1

此程式使用 cursor.executemany() 函式在員工表中插入兩行。

data = [(1, 'Ramesh', 32, 2000.00, 'Maryland', 'USA'),(2, 'Mukesh', 40, 5000.00, 'New York', 'USA')]
cursor.executemany("INSERT INTO employees(ID, Name, Age, Salary, City, Country) Values(?, ?, ?, ?, ?, ?)", data)
conn.commit()

輸出

結果如下生成 -

(1, 'Ramesh', 32, 2000.00, 'Maryland', 'USA')
(2, 'Mukesh', 40, 5000.00, 'New York', 'USA')

示例 2

以下程式使用 cursor.executemany() 函式將 ID 為 1 和 2 的員工的薪資更新為 3000.00 和 5000.00。

updates = [(3000.00, 1), (5500.00, 2)]
cursor.executemany("UPDATE employees SET Salary = ? WHERE ID = ?", updates)
conn.commit()

輸出

當我們執行以上程式碼時,我們將獲得以下輸出 -

(1, 'Ramesh', 32, 3000.00, 'Maryland', 'USA')
(2, 'Mukesh', 40, 5500.00, 'New York', 'USA')

示例 3

在下面的示例中,我們使用 cursor.executemany() 函式從員工表中刪除 ID 為 1 和 2 的員工。

ids_to_delete = [(1), (2)]
cursor.executemany("Delete From employees WHere ID = ?", ids_to_delete)
conn.commit()

輸出

輸出如下獲得 -

(3, 'Sumit', 45, 4500.00, 'Muscat', 'Oman')
(4, 'Kaushik', 25, 2500.00, 'Kolkata', 'India')
(5, 'Hardik', 29, 3500.00, 'Bhopal', 'India')
(6, 'Komal', 38, 3500.00, 'Saharanpur', 'India')
(7, 'Ayush', 25, 3500.00, 'Delhi', 'India')

示例 4

當我們使用 cursor.executemany() 函式在資料集中插入字串而不是元組時,它會丟擲 TypeError。

data = [(1, 'Ramesh', 32, 2000.00, 'Maryland', 'USA'), 'Sanjay']
cursor.executemany("INSERT INTO employees (ID, Name, Age, Salary, City, Country) VALUES(?, ?, ?, ?, ?, ?)", data)
conn.commit()

輸出

我們將獲得以下輸出 -

TypeError: parameters are of unsupported type
python_modules.htm
廣告