我在eclipse中使用带有mySQL连接器的Pydev。我正在编写代码以从代码输出中获取信息并将其放入数据库中。但我收到错误
sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 5, and there are 0 supplied.
以下是代码,任何帮助将不胜感激:
try:
cursor.execute('''CREATE TABLE ipinfo
(SEARCH_ASN TEXT NOT NULL,
SEARCH_ASN_CIDR TEXT NOT NULL,
SEARCH_COUNTRY_CODE TEXT NOT NULL,
SEARCH_DATE DATE NOT NULL,
SEARCH_REGISTRY TEXT NOT NULL)''')
print "Table created successfully";
except:
pass
cursor.close()
object = IPWhois('ip address')
results = obj.lookup_rdap(depth=1)
cursor = sqlite3.connect('test.db')
cursor.execute("INSERT INTO ipinfo(SEARCH_ASN, SEARCH_ASN_CIDR, SEARCH_COUNTRY_CODE, SEARCH_DATE, SEARCH_REGISTRY) \
VALUES(?,?,?,?,?)")
cursor.commit()
cursor.close()
结果需要使用webcrawler的信息来获取信息
答案 0 :(得分:1)
下面:
cursor.execute("INSERT INTO ipinfo(SEARCH_ASN, SEARCH_ASN_CIDR, SEARCH_COUNTRY_CODE, SEARCH_DATE, SEARCH_REGISTRY) \
VALUES(?,?,?,?,?)")
您正在发送参数化的insert
查询,但是您没有提供要插入的值。这应该类似于:
sql = "INSERT INTO ipinfo(SEARCH_ASN, SEARCH_ASN_CIDR, SEARCH_COUNTRY_CODE, SEARCH_DATE, SEARCH_REGISTRY) VALUES(?,?,?,?,?)"
values = (value1, value2, value3, value4, value5)
cursor.execute(sql, values)
我认为您希望从results
变量中获取值,但由于我们不知道results
是什么,我们无法继续帮助。
答案 1 :(得分:0)
您尚未提供任何数据 insert语句如下所示(例如):
ajax="false"