创建表后可以执行插入行(rows)的 SQL 操作“INSERT INTO…”向表中添加数据记录。通过游标对象执行 Cursor 的 execute()方法,每次插入一行数据。例如:
#将两行数据插入 Department 表
c.execute("INSERT INTO Department VALUES ('Research','2006-01-05','产品研发')")
c.execute("INSERT INTO Department VALUES ('Sell','2008-01-05','sell productions')")
#将三行数据插入 Employee 表
c.execute("INSERT INTO Employee (name, date, salary, department)\
VALUES ('Wang wei','2006-01-05',8000.5,'Research')")
c.execute("INSERT INTO Employee (name, date, salary, department)\
VALUES ('Zhang ping','2008-01-05',7000.5, 'Sell')")
c.execute("INSERT INTO Employee (name, date, salary, department)\
VALUES ('Zhao qiang ','2018-11-05',6000.5, 'Sell')")
#保存(提交 commit) 修改
conn.commit()
#如果完成了对数据库文件的操作,则必须通过 conn 的.close()方法关闭连接
#确保修改已经提交,否则数据会丢失
conn.close()
现在,数据库的两个表中都有相应的记录了,所以可以在命令行执行如下命令,用于从其中的一个表(如 Employee)提取出所有数据(所有行)。例如:
sqlite3 company.db "select * from Employee"
输出:
1|Wang wei|2006-01-05|8000.5|Research
2|Zhang ping|2008-01-05|7000.5|Sell
3|Zhao qiang |2018-11-05|6000.5|Sell