sqlite3 python 生成表

sqlite3 python generate tables

我正在尝试根据函数的参数生成 tables。为了生成 table 我想传递一串我想作为以下函数执行的内容:

conn = sqlite3.connect('tutorial.db')

c = conn.cursor()

def create_table(name, unix, datestamp, keyword, value):

    command = "CREATE TABLE IF NOT EXISTS " + name + "(" + unix + " REAL, " + datestamp + " TEXT, " + keyword + " TEXT, " + value + " REAL)"

    c.execute('CREATE TABLE' + command)

但是当我运行命令时:

create_table('new','boy','girl','joy','joe')

我收到错误: 追溯(最近一次通话): 文件 "C:\Users\David\Documents\learn_sql_\learn_sql.py",第 22 行,位于 create_table('new','boy','girl','joy','joe') 文件 "C:\Users\David\Documents\learn_sql_\learn_sql.py",第 12 行,在 create_table 中 c.execute('CREATE TABLE' + 命令) sqlite3.OperationalError: 附近 "TABLECREATE": 语法错误

想法?

谢谢

试试这个:

import sqlite3

conn = sqlite3.connect('tutorial.db')

c = conn.cursor()

def create_table(name, unix, datestamp, keyword, value):

    #c.execute('CREATE TABLE' + command)
    cmd = "CREATE TABLE IF NOT EXISTS %s(%s real,%s text,%s text,%s real)" % (name,unix,datestamp,keyword,value)
    print(cmd)
    c.execute(cmd)

create_table('new','boy','girl','joy','joe')