我想創建三個表fremdgehen.com,molligundwillig.de和reifer6.de。
但我無法將每個元素轉移到CREATE TABLE. 為什么?
import sqlite3
con = sqlite3.connect('emails.db')
cur = con.cursor()
pages = ['fremdgehen.com', 'molligundwillig.de', 'reifer6.de']
for i in pages:
try:
sql_command = f'''
CREATE TABLE {i} (
email INTEGER,
password VARCHAR,
PRIMARY KEY (id));
cur.executescript(sql_command)
con.commit()
'''
except:
pass
con.close()
uj5u.com熱心網友回復:
由于表名包含一個.字符,因此您必須對名稱進行轉義。
sql_command = f'''
CREATE TABLE `{i}` (
email INTEGER,
password VARCHAR,
PRIMARY KEY (id));
cur.executescript(sql_command)
con.commit()
'''
請注意,包含.表名和列名是不方便的,因為.是資料庫、表和列名之間的分隔符。因此,您必須在所有查詢中轉義表名。考慮.在將其用作表名之前洗掉它以簡化此操作。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/451661.html
上一篇:我正在嘗試在sql.js中創建兩個表,但存在關于外鍵約束的錯誤。創建第一個表沒有問題
下一篇:SQLite對這個目的有用嗎?
