SQLite python-参数的类型不受支持
我想使用Python sqlite模块将记录插入sqlite数据库 使用executemany()执行INSERT语句会导致“参数类型不受支持”错误 得到 如何将var解析到表中?将SQLite python-参数的类型不受支持,python,sqlite,Python,Sqlite,我想使用Python sqlite模块将记录插入sqlite数据库 使用executemany()执行INSERT语句会导致“参数类型不受支持”错误 得到 如何将var解析到表中?将(项),替换为(项,)。具有输出的工作代码如下所示 import sqlite3 conn = sqlite3.connect('food.db') c = conn.cursor() c.execute('''CREATE TABLE IF NOT EXISTS nutritional_values
(项),
替换为(项,)
。具有输出的工作代码如下所示
import sqlite3
conn = sqlite3.connect('food.db')
c = conn.cursor()
c.execute('''CREATE TABLE IF NOT EXISTS nutritional_values
(item, calories, total fat, protein)''')
items = [ ('Broccoli Chinese', 22, 0.7, 1.1),
('chia seeds', 490, 30.8, 15.6),
('blueberries', 57, 0.3, 0.7),]
c.executemany('INSERT INTO nutritional_values VALUES (?,?,?,?)',items)
c.execute('''CREATE TABLE IF NOT EXISTS food_consumption
(date, item, amount)''')
c.execute('DELETE FROM food_consumption')
consumed = [ ('24/8/2019', 'Broccoli Chinese', 1.5),
('24/8/2019', 'chia seeds', 0.35),
('24/8/2019', 'blueberries', 0.4),]
c.executemany('INSERT INTO food_consumption VALUES (?,?,?)',consumed)
sql = """SELECT nv.item, nv.calories
FROM nutritional_values nv
INNER JOIN food_consumption fc
ON nv.item = fc.item"""
for row in c.execute(sql):
print(row)
c.execute('''CREATE TABLE IF NOT EXISTS nutrition_consumed
(var1)''')
for row in c.execute(sql):
var1 = row[1]*2
item = [(var1),]
c.executemany('INSERT INTO nutrition_consumed VALUES (?)', (item,))
for row in c.execute('SELECT * FROM nutrition_consumed'):
print(row)
conn.commit()
conn.close()
输出:
abhay@abhay-Lenovo-Z51-70:~$python test.py
(‘西兰花中国’,22)
(《甲骨文》,490)
(《蓝莓》,57)
(44,)
(项目)
应该是(项目,)
,使其成为元组。好的,更正了,但这不会改变错误我说的(项目,)
不是(项目),
重复:
c.executemany('INSERT INTO nutrition_consumed VALUES (?)', (item),)
ValueError: parameters are of unsupported type
import sqlite3
conn = sqlite3.connect('food.db')
c = conn.cursor()
c.execute('''CREATE TABLE IF NOT EXISTS nutritional_values
(item, calories, total fat, protein)''')
items = [ ('Broccoli Chinese', 22, 0.7, 1.1),
('chia seeds', 490, 30.8, 15.6),
('blueberries', 57, 0.3, 0.7),]
c.executemany('INSERT INTO nutritional_values VALUES (?,?,?,?)',items)
c.execute('''CREATE TABLE IF NOT EXISTS food_consumption
(date, item, amount)''')
c.execute('DELETE FROM food_consumption')
consumed = [ ('24/8/2019', 'Broccoli Chinese', 1.5),
('24/8/2019', 'chia seeds', 0.35),
('24/8/2019', 'blueberries', 0.4),]
c.executemany('INSERT INTO food_consumption VALUES (?,?,?)',consumed)
sql = """SELECT nv.item, nv.calories
FROM nutritional_values nv
INNER JOIN food_consumption fc
ON nv.item = fc.item"""
for row in c.execute(sql):
print(row)
c.execute('''CREATE TABLE IF NOT EXISTS nutrition_consumed
(var1)''')
for row in c.execute(sql):
var1 = row[1]*2
item = [(var1),]
c.executemany('INSERT INTO nutrition_consumed VALUES (?)', (item,))
for row in c.execute('SELECT * FROM nutrition_consumed'):
print(row)
conn.commit()
conn.close()