Python insert MySQL _mysql_exceptions.ProgrammingError: (1064,
数据库结构 | |||||
---|---|---|---|---|---|
Field | Type | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+-------+ | |||||
Device_Name | varchar(24) | YES | NULL | ||
IP_Address | varchar(24) | YES | NULL | ||
DRAC | varchar(24) | YES | NULL | ||
Support_Group | varchar(24) | YES | NULL | ||
Domain | varchar(24) | YES | NULL | ||
OU | varchar(24) | YES | NULL | ||
IEM | varchar(24) | YES | NULL | ||
OS | varchar(24) | YES | NULL | ||
OS_Version | varchar(24) | YES | NULL | ||
Environment | varchar(24) | YES | NULL | ||
Risk | varchar(24) | YES | NULL | ||
Function | varchar(24) | YES | NULL | ||
App | varchar(24) | YES | NULL | ||
Owner | varchar(24) | YES | NULL | ||
Owner_mail | varchar(24) | YES | NULL | ||
Country | varchar(24) | YES | NULL | ||
City | varchar(24) | YES | NULL | ||
Site | varchar(24) | YES | NULL | ||
Location | varchar(24) | YES | NULL | ||
Category | varchar(24) | YES | NULL | ||
Manufacturer | varchar(24) | YES | NULL | ||
Model | varchar(24) | YES | NULL | ||
Rack | varchar(24) | YES | NULL | ||
Power | varchar(24) | YES | NULL | ||
Serial | varchar(24) | YES | NULL | ||
Warranty | varchar(24) | YES | NULL | ||
Decomm_Comm | varchar(24) | YES | NULL | ||
Project | varchar(24) | YES | NULL | ||
Manager | varchar(24) | YES | NULL | ||
Comm_data | varchar(24) | YES | NULL |
代码
!/bin/python
import os
import xlrd
import MySQLdb
import re
DB_HOST='127.0.0.1'
DB_USER='root'
DB_PASS='Jun06jun'
DB_NAME='list'
db=MySQLdb.connect(host=DBHOST,user=DBUSER,passwd=DBPASS,db=DBNAME)
cursor=db.cursor()
a=[]
os.chdir('/home/ran/Desktop')
data=xlrd.open_workbook('list.xlsx')
table=data.sheets()[0]
nrows=table.nrows
for i in range(nrows):
c = table.row_values(i)
print len(c)
for i_row in range(len(c)):
if c[i_row] == '': c[i_row] = "NULL"
sql="insert into JLL values(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s) % (c[0],c[1],c[2],c[3],c[4],c[5],c[6],c[7],c[8],c[9],c[10],c[11],c[12],c[13],c[14],c[15],c[16],c[17],c[18],c[19],c[20],c[21],c[22],c[23],c[24],c[25],c[26],c[27],c[28],c[29])"
cursor.execute(sql)
Excel 中某一列数据
AUCFD317-Joey
x.x.x.x
VMWare
Joey
Linux
N/A
N/A
Linux
Linux (MLOS)- RHEL 5 64bit Patch 3
Production
NULL
ePO Server
McAfee GTI Proxy Appliance 2.0.0
x
x
x
x
x
Server Room
Server-Virtual
VMware, Inc.
VMware Virtual Platform
NULL
NULL
Vmware
N/A - VM
NULL
NULL
NULL
NULL
发生的错误
mysqlexceptions.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 '%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s' at line 1")
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
错误:
正确:
参考 @displaynone 的来个简化版,python的语法糖真多
因为string被没有正确赋值,顺便贴上简化版。
更简单版(为什么要折腾%s呢哈哈):