#!usr/local/bin python #-*- coding: UTF-8-*- import sqlite3 def main(): cx = sqlite3.connect("/data/freenas-v1.db") cu = cx.cursor() for i in range(2,400): cu.execute("INSERT INTO vtopmanage_vtopnode(id, host_uuid, host_name, vtop_user, vtop_pass, ip_address, version, t ype, register_time, last_checkin, status, host_manufacturer, host_model, cpu_manufacturer, cpu_number, cpu_type, cpu_frequ ency, disk_total, disk_engine, disk_vm, memory_total, memory_engine, memory_vm, memory_available) VALUES(%d, '%d', 'host_% d', 'root', 'vtop_pass', '192.168.1.62', 'r4', 'vTop', 2014, 2014, 1, 'halsign', 'model', 'amd', 12, 'i3', '2ghz', 4, 5, 6 , 2222, 3, 5, 1)" %(i, i, i)) cx.commit() if __name__ == '__main__': main()
写了一个插入400条数据的脚本。其中用到了sqlite3,有几个问题需要注意:
1-数据库的一般操作流程:
cx = sqlite3.connect("/data/freenas-v1.db")
先连接一个数据库文件,如果存在则连接,不存在则会新建一个。
cu = cx.cursor()
然后绑定一个cursor,用游标来操作数据库。
cu.execute(INSERT INTO table_name(columns_name1, columns_name2, ...) VALUES(val1, val2, val3, ...)")
然后插入数据,
cu.commit()
最后执行。
2-table_name(columns_name)中的columns_name最好不要省略,有的博客中写的省略了,但是在本人的编程中,出现了错误,加上后,能够通过。
3-如何插入变量(http://ipython.iteye.com/blog/328225):
cur.execute("insert into tablename1 values ('%d','%s')" % (num,string)) cur.execute("insert into g values ('%d','%s')" % (a,b))
COMMING SOON..