我正在尝试使用Python将表的名称设置为当前日期时间。但是,我一直收到语法错误。我尝试过几种不同的东西,你会在下面看到。如果可以的话请帮忙。谢谢!
选项一:
import sqlite3, datetime
con = sqlite3.connect('test.db')
cur = con.cursor()
cur.execute("CREATE TABLE datetime.datetime.now().strftime('%Y%d%m')(col1 TEXT, col2 TEXT)")
选项二:
import sqlite3, datetime
con = sqlite3.connect('test.db')
cur = con.cursor()
varOne = datetime.datetime.now(strftime('%Y%d%m')
cur.execute("CREATE TABLE {tn} (col1 TEXT, col2 TEXT)".format(tn = varOne))
这两个都在[某些字符]附近产生相同的操作错误:语法错误。有什么想法吗?
答案 0 :(得分:1)
尝试以下解决方案。它为我工作。
import sqlite3
from datetime import datetime
conn = sqlite3.connect('test.db')
c = conn.cursor()
now = datetime.now()
table_name = '[' + datetime.strftime(now,'%Y%d%m') + ']'
sql = "create table %s (%s text,%s text)" % (table_name,"col1","col2")
c.execute(sql)