如何创建表并选择数据库中的任何列?

时间:2018-11-24 01:52:56

标签: python database sqlite

编写一个名为“ create_table”的函数,该函数不带任何参数,并且不返回任何值。该函数将创建一个名为“ spokesman”的表,其中包含您在数据库中选择的文件名为“ region.db”的任何列。如果该表已经存在,则您的程序不应崩溃(即,您的函数将被调用两次,并且在两次调用中均应正常工作)。

import sqlite3
def create_table():
    conn=sqlite3.connect('region.db')
    cur=conn.cursor()
    cur.execute("CREATE TABLE spokesman (first text)")
    conn.commit()
    conn.close()

我做错了什么,已经有了餐桌发言人?

1 个答案:

答案 0 :(得分:3)

这意味着您之前已经执行过该程序,因此已经创建了表。您不能创建与现有表同名的新表。因此,如果您已两次执行该程序,则会收到该错误。

因此,将SQL命令更改为CREATE TABLE IF NOT EXISTS spokesman (first text)

因此整个程序应如下:

import sqlite3

def create_table():
    conn = sqlite3.connect('region.db')
    cur = conn.cursor()
    cur.execute("CREATE TABLE IF NOT EXISTS spokesman (first text)")
    conn.commit()
    conn.close()