码迷,mamicode.com
首页 > 数据库 > 详细

python内置的sqlite3模块,使用其内置数据库

时间:2020-04-05 20:21:36      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:变量   step   sele   方法   inter   arch   nbsp   对象   number   

1、python内置的sqlite3模块,创建数据库中的表,并向表中插入数据,从表中取出所有行,以及输出行的数量。

#!/usr/bin/env python3
#创建SQLite3内存数据库,并创建带有四个属性的sales表
#sqlite3模块,提供了一个轻量级的基于磁盘的数据库,不需要独立的服务器进程
import sqlite3
#使用‘:memory:’在内存中创建了一个数据库,创建了连接对象con来代表数据库
con = sqlite3.connect(:memory:)
#创建表名为sales的表,将这个字符串赋值给query
query = """CREATE TABLE sales
            (customer VARCHAR(20),
            product VARCHAR(40),
            amount FLOAT,
            date DATE);"""
#使用连接对象的execute()方法执行query中的SQL命令
con.execute(query)
#使用连接对象的commit()方法将修改提交(保存)到数据库
con.commit()
#向表中插入几行数据
data = [(Richard Lucas,Notepad,2.50,2019-01-02),
        (Jenny Kim,Binder,4.15,2019-01-05),
        (Svetlana Crow,Printer,155.75,2019-02-03),
        (Stephen Randolph,Computer,679.40,2019-02-20)]
#将插入语句赋给变量statement,?是占位符
statement = "INSERT INTO sales VALUES(?,?,?,?)"
#因为有四个占位符,这里就需要提供一个包含4个值的元组,executemany()方法为data中的每个数据元组执行
#statement中的SQL命令,这里执行了四次insert命令
con.executemany(statement,data)
#将修改保存到数据库
con.commit()
#查询sales表,并将命令结果赋值给一个光标对象cursor,光标对象有execute、executemany、fetchone、
#fetchmany和fetchall方法
cursor = con.execute("SELECT * FROM sales")
#返回结果集中的所有行
rows = cursor.fetchall()
print(rows)
print(………………)
#查询结果中行的数量
row_counter = 0
for row in rows:
    print(row)
    row_counter += 1
print(………………)
print(Number of rows: %d % (row_counter))

Spyder右下角打印出来的结果:

[(Richard Lucas, Notepad, 2.5, 2019-01-02), (Jenny Kim, Binder, 4.15, 2019-01-05), (Svetlana Crow, Printer, 155.75, 2019-02-03), (Stephen Randolph, Computer, 679.4, 2019-02-20)]
………………
(Richard Lucas, Notepad, 2.5, 2019-01-02)
(Jenny Kim, Binder, 4.15, 2019-01-05)
(Svetlana Crow, Printer, 155.75, 2019-02-03)
(Stephen Randolph, Computer, 679.4, 2019-02-20)
………………
Number of rows: 4

2、python内置的sqlite3模块,向表中插入新纪录

 

python内置的sqlite3模块,使用其内置数据库

标签:变量   step   sele   方法   inter   arch   nbsp   对象   number   

原文地址:https://www.cnblogs.com/xiao02fang/p/12638549.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!