sqlite3 OperationalError: near "m": syntax error

sqlite3 OperationalError: near "m": syntax error

import pandas as pd
import sqlite3

df = pd.read_csv('liked_songs.csv')
!sqlite3 spotify.db < spotify.sql
connection = sqlite3.connect('spotify.db')
df.columns = df.columns.str.replace(' ','_')
cursor = connection.cursor()

for index in df.index:
    sr = df.iloc[index]
    cursor = cursor.execute(f"""INSERT INTO spotify (SpotifyID, ArtistID, Track_Name, 
                           Album_Name, Artist_Name, Release_Date, Duration,Popularity, Genres)
                        VALUES ('{sr.SpotifyID}', '{sr.Artist_ID}', '{sr.Track_Name}', 
                                '{sr.Album_Name}', '{sr.Artist_Name}', '{sr.Release_Date}',
                                '{sr.Duration}', '{sr.Popularity}', '{sr.Genres}')""")

我正在使用 pandas 导入 .csv 文件并使用 sqlite3 将数据输入由 SQL 脚本创建的数据库。Image of SQL script

可以直接使用to_sql:

import pandas as pd
import sqlite3

df = pd.read_csv('liked_songs.csv')
connection = sqlite3.connect('spotify.db')
df.columns = df.columns.str.replace(' ','_')
df.to_sql('spotify', connection, if_exists='replace', index=None)