使用变量创建 SQLite Table
Create SQLite Table With Variable
我想创建三个表 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()
由于 table 名称包含 .
字符,您必须对名称进行转义。
sql_command = f'''
CREATE TABLE `{i}` (
email INTEGER,
password VARCHAR,
PRIMARY KEY (id));
cur.executescript(sql_command)
con.commit()
'''
请注意,在 table 和列名中使用 .
是不方便的,因为 .
是数据库、table 和列名之间的分隔符。因此,您必须在所有查询中转义 table 名称。考虑在将 .
用作 table 名称之前将其删除以简化此操作。
我想创建三个表 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()
由于 table 名称包含 .
字符,您必须对名称进行转义。
sql_command = f'''
CREATE TABLE `{i}` (
email INTEGER,
password VARCHAR,
PRIMARY KEY (id));
cur.executescript(sql_command)
con.commit()
'''
请注意,在 table 和列名中使用 .
是不方便的,因为 .
是数据库、table 和列名之间的分隔符。因此,您必须在所有查询中转义 table 名称。考虑在将 .
用作 table 名称之前将其删除以简化此操作。