[英]how to fix 'sqlite3.OperationalError: near "?": ' error in python sqlite?
[英]How can I fix this sqlite3.OperationalError / sql syntax error?
我的sqllite數據庫無法正常工作,並且我假設有一些錯誤與SQL語法有關。
import sqlite3
conn = sqlite3.connect("SONGS.db")
conn.execute("""CREATE TABLE SONGS
(ID INT PRIMARY KEY NOT NULL,
Song-Name TEXT NOT NULL,
Artist TEXT NOT NULL,
Released TEXT NOT NULL,
Views TEXT NOT NULL);""")
conn.close()
conn = sqlite3.connect("SONGS.db")
conn.execute("INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) \
VALUES (1, 'Counting Stars', 'OneRepublic', 'May 31, 2013', '2,458,427,299' )");
conn.execute("INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) \
VALUES (2, 'Waka Waka', 'Shakira', 'June 4, 2010', '2,052,927,789' )");
conn.execute("INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) \
VALUES (3, 'I Want It That Way', 'Backstreet Boys', 'October 25, 2009', '515.894,015' )");
conn.execute("INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) \
VALUES (4, 'Psycho', 'Post Malone', 'March 22, 2018', '400,195,600' )");
conn.execute("INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) \
VALUES (5, 'Till I Collapse', 'Eminem', 'September 16, 2015', '335,842,184' )");
conn.execute("INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) \
VALUES (6, 'These Days', 'Rudimental', 'January 25, 2018', '270,529,823' )");
conn.execute("INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) \
VALUES (7, 'Juice WRLD', 'Black & White', 'October 3, 2018', '5,268,766' )");
conn.execute("INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) \
VALUES (8, 'Shotgun', 'George Ezra', 'June 14, 2018', '18,291,200' )");
conn.commit()
conn.close()
有我的代碼,這是錯誤
第25行,在Views TEXT NOT NULL);“”“)sqlite3.OperationalError:在”-“附近:語法錯誤
,此錯誤是由於數據庫表中的一個名為View
的字段引起的
我認為你不需要;
對於conn.execute
語句。
因此error line 25, in Views TEXT NOT NULL
另一個建議,使用字符串替換:
insert = "INSERT INTO SONGS (ID,Song-Name,Artist,Released,Views) VALUES ({}, {}, {}, {}, {})"
當您插入時,請執行以下操作:
conn.execute(insert.format(1, 'Counting Stars', 'OneRepublic', 'May 31, 2013', '2,458,427,299'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.