初學sqlite的一些基礎操作

import sqlite3

conn = sqlite3.connect('celebA.db')
c = conn.cursor()

# CREATE TABLE
def create_table():
    c.execute("CREATE TABLE IF NOT EXISTS  id_list( \
               filename TEXT PRIMARY KEY NOT NULL, \
               id INTEGER )")

    c.execute("CREATE TABLE IF NOT EXISTS  att_list( \
               filename TEXT PRIMARY KEY NOT NULL, \
               a1 INTEGER ,\
               a2 INTEGER )")


def add_data():
    filename_list = ['000001.jpg', '000002.jpg', '000003.jpg']
    id_list = [2880, 2937, 8692]
    att_list = [[-1, 1], [-1, -1], [-1, -1]]

    for i in range(len(filename_list)):
        c.execute("INSERT INTO id_list \
                   VALUES('{}',{})".format(filename_list[i],id_list[i]))
        c.execute("INSERT INTO att_list \
                           VALUES('{}',{}, {})".format(filename_list[i], att_list[i][0], att_list[i][1]))

    conn.commit()


def show_data():
    c.execute('SELECT * FROM id_list')
    [print(row) for row in c.fetchall()]
    c.execute('SELECT * FROM att_list')
    [print(row) for row in c.fetchall()]

def update_data():
    c.execute('SELECT * FROM id_list')
    [print(row) for row in c.fetchall()]

    c.execute('UPDATE id_list SET id = 666 WHERE id = 2880')
    conn.commit()

    c.execute('SELECT * FROM id_list')
    [print(row) for row in c.fetchall()]

def del_data():
    c.execute('SELECT * FROM att_list')
    [print(row) for row in c.fetchall()]

    c.execute('DELETE FROM att_list WHERE a2 = -1')
    conn.commit()

    c.execute('SELECT * FROM att_list')
    [print(row) for row in c.fetchall()]

create_table()
add_data()
#show_data()
#update_data()
del_data()

c.close()
conn.close()

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章