TypeError:pymysql python需要一个整数

时间:2017-05-24 07:30:54

标签: python pymysql

我有一个具有以下结构的数据库

 CREATE TABLE cdrdataTest(
   id int(11) NOT NULL AUTO_INCREMENT,
   acctid int(11) NOT NULL,
   session_time int(11) NOT NULL,
   revenue_time int(11) NOT NULL,
   expense_time int(11) NOT NULL,
   start_time datetime NOT NULL,
   revenue_increment int(11) NOT NULL,
     PRIMARY KEY(id)
) ;

当我尝试使用以下代码将数据输入Mysql数据库时,Bellow是我的查询返回和错误:

 conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='', 
    db='cdrmonitoringdata')
 cur = conn.cursor()
 for lst in data:
     q = "INSERT INTO cdrdataTest(acctid, session_time, 
   revenue_time,expense_time,start_time,revenue_increment) VALUES (%d, %d, %d, 
   %d,%d,%d )" %
  (int(lst[0]),int(lst[1]),int(lst[2]),int(lst[3]),datetime.datetime(lst[4]),int(lst[5]))

错误如下

Traceback (most recent call last):
  File "C:/Users/Mang123/PycharmProjects/readData/readDataFile.py", line 50, in <module>
    insertDataIntoDatabase(data)
  File "C:/Users/Mang123/PycharmProjects/readData/readDataFile.py", line 9, in insertDataIntoDatabase
    q = "INSERT INTO cdrdataTest(acctid, session_time, revenue_time,expense_time,start_time,revenue_increment) VALUES (%d, %d, %d, %d,%d,%d )" %(int(lst[0]),int(lst[1]),int(lst[2]),int(lst[3]),datetime.datetime(lst[4]),int(lst[5]))
  TypeError: an integer is required

Process finished with exit code 1

0 个答案:

没有答案