Python SQLite:获取水果订单的用户输入,从数据库中查找价格,并乘以数量以获得收据

dhxwm5r4  于 2023-05-29  发布在  SQLite
关注(0)|答案(1)|浏览(111)

我有一个使用sqlite的python程序,我试图创建一个函数来接收用户输入的简单水果订单。我有2个用户输入;一个字符串和一个整型数,在我的数据库中有一个浮点数。我想做的是从用户输入的名称和数量,然后将数量乘以数据库中的价格浮动,并将结果浮动与名称和数量沿着写入文本文件,以模拟电子邮件样式的收据。
主文件:

#user inputs
     purchaseName = str(input("Enter Name:"))
     purchaseQuantity = int(input("Enter Quantity:"))
     purchaseConfirm = str(input("Confirm your order with y/n:"))

使用sqlite数据库的第二个文件:

#entries to be inserted into database
productEntries = [(1, "Strawberries", 1.50, 123),
                  (2, "Blueberries", 1.30, 178),
                  (3, "Raspberries", 1.40, 145),
                  (4, "Gooseberries", 2.30, 121),
                  (5, "Blackberries", 1.70, 90)]

#statement to insert values into database
cursor.executemany("INSERT OR IGNORE INTO products (productID, productName, productPrice, productQuantity) VALUES "
                   "(?, ?, ?, ?);", productEntries)

#create table to store the data
cursor.execute("""CREATE TABLE IF NOT EXISTS products (
                productID INTEGER PRIMARY KEY,
                productName TEXT NOT NULL,
                productPrice REAL,
                productQuantity INTEGER
                );""")

#attempt to perform calculation on the price and quantity values
cursor.execute("SELECT productPrice * productQuantity FROM products WHERE productName=?", purchaseName)

#variable to be sent back to main file to be written to txt file
purchasePrice = cursor.fetchall()
p8h8hvxi

p8h8hvxi1#

您的查询将返回库存中产品的总值,因为您要乘以productQuantity。要得到购买的总价,您必须乘以purchaseQuantity

cursor.execute("""
    SELECT productPrice * ? 
    FROM products WHERE 
    productName=?""", (purchaseQuantity, purchaseName))

相关问题