1. 程式人生 > >pymysql.err.ProgrammingError: (1064)(字串轉譯問題)

pymysql.err.ProgrammingError: (1064)(字串轉譯問題)

程式碼:

sql = "insert into dm_copy(演出型別,演出場館,劇目名稱,演出地點,演出時間,演出票價,演出團體,建立時間, url)values('%s','%s','%s','%s','%s','%s','%s','%s','%s')" % (category, venue, name, city, showtim, prices[:-1], actor, Creation_time, p_url)

問題是:

pymysql.err.ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'tWe','2018/07/09 09:33','https://piao.damai.cn/155901.html')' at line 1")

原因可能是actor值

   有引號

解決方式

pymysql.escape_string()

程式碼:

sql = "insert into dm_copy(演出型別,演出場館,劇目名稱,演出地點,演出時間,演出票價,演出團體,建立時間, url)values('%s','%s','%s','%s','%s','%s','%s','%s','%s')" % (category, venue, name, city, showtim, prices[:-1], pymysql.escape_string(actor), Creation_time, p_url)