簡體   English   中英

使用SQLITE3制作的基本數據庫

[英]Basic Database made with SQLITE3

我使用sqlite3在python中創建了一個基本數據庫,該數據庫接受3個值並將其存儲。 現在的問題在於,當我創建一個應該輸出值的函數時,終端上沒有顯示語法錯誤,也沒有打印任何我的值。 我想這是一個小錯誤,但我無法發現它。

代碼如下:

import sqlite3

def create_table():
    conn = sqlite3.connect("lite.db")    
    cur = conn.cursor()
    cur.execute("CREATE TABLE IF NOT EXISTS store (item TEXT, quantity 
    INTEGER, price FLOAT)")
    conn.commit()
    conn.close()

def insert(item, quantity, price):
    conn = sqlite3.connect("lite.db")
    cur = conn.cursor()
    cur.execute("INSERT INTO store VALUES ('?, ?, ?')", (item, quantity, 
    price))
    conn.commit()
    conn.close()

insert("Mug", 8, 6)

def view():
    conn = sqlite3.connect("lite.db")
    cur = conn.cursor()
    cur.execute("SELECT * FROM store")
    rows = cur.fetchall()
    conn.close()
    return rows

print(view())

再次沒有顯示錯誤消息,但沒有顯示我的值。

我試過了 似乎在insert不需要單引號。 參見下面的修改:

import sqlite3

def create_table():
    conn = sqlite3.connect("lite.db")    
    cur = conn.cursor()
    cur.execute("CREATE TABLE IF NOT EXISTS store (item TEXT, quantity INTEGER, price FLOAT)")
    conn.commit()
    conn.close()

def insert(item, quantity, price):
    conn = sqlite3.connect("lite.db")
    cur = conn.cursor()
    cur.execute("INSERT INTO store VALUES (?,?,?)", (item, quantity, price))
    conn.commit()
    conn.close()


def view():
    conn = sqlite3.connect("lite.db")
    cur = conn.cursor()
    cur.execute("SELECT * FROM store")
    rows = cur.fetchall()
    conn.close()
    return rows
create_table()
insert("Mug", 1, 5)
print(view())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM