Python基础-数据库-使用SQLite

数据库类别

既然我们要使用关系数据库,就必须选择一个关系数据库。目前广泛使用的关系数据库也就这么几种:
付费的商用数据库:
1. Oracle,典型的高富帅;
2. SQL Server,微软自家产品,Windows定制专款;
3. DB2,IBM的产品,听起来挺高端;
4. Sybase,曾经跟微软是好基友,后来关系破裂,现在家境惨淡。

这些数据库都是不开源而且付费的,最大的好处是花了钱出了问题可以找厂家解决,不过在Web的世界里,常常需要部署成千上万的数据库服务器,当然不能把大把大把的银子扔给厂家,所以,无论是Google、Facebook,还是国内的BAT,无一例外都选择了免费的开源数据库:
1. MySQL,大家都在用,一般错不了;
2. PostgreSQL,学术气息有点重,其实挺不错,但知名度没有MySQL高;
3. sqlite,嵌入式数据库,适合桌面和移动应用。

作为Python开发工程师,选择哪个免费数据库呢?当然是MySQL。因为MySQL普及率最高,出了错,可以很容易找到解决方法。而且,围绕MySQL有一大堆监控和运维的工具,安装和使用很方便。

Python基础 SQLite 插入和查询

插入语句

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Python基础 SQLite 插入和查询

import sqlite3

def insertDb():
    # 连接数据库,不存在则当前目录创建
    conn = sqlite3.connect("SuSQLite.db")
    # 创建一个cursor
    cursor = conn.cursor()

    # 执行创建表语句
    # user 为表名
    # 字段名分别为 id 和 name
    cursor.execute("create table user(id varchar(20) primary key, name varchar(20))")

    # 插入一条数据
    print("插入数据")
    cursor.execute('insert into user (id, name) values (\'A01\', \'李白\')')

    # 关闭游标
    cursor.close()
    # 提交上述操作
    conn.commit()
    # 关闭连接 
    conn.close()

查询语句

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Python基础 SQLite 插入和查询

import sqlite3

# 查询所有
def queryDb():
    conn = sqlite3.connect("SuSQLite.db")
    cursor = conn.cursor()
    cursor.execute("select * from user")
    values = cursor.fetchall()
    print(values)
    # 关闭游标
    cursor.close()
    # 提交上述操作
    conn.commit()
    # 关闭连接 
    conn.close()

# 根据名字查询
def queryDbByName(value):
    conn = sqlite3.connect("SuSQLite.db")
    cursor = conn.cursor()
    cursor.execute("select * from user where name=?",(value, ))
    values = cursor.fetchall()
    print(values)
    # 关闭游标
    cursor.close()
    # 提交上述操作
    conn.commit()
    # 关闭连接 
    conn.close()

queryDb()
queryDbByName("李白")

运行结果

D:\PythonProject>python main.py
[('1', '李白'), ('A-1', 'Michael')]
[('1', '李白')]

这里的语句和java的sql语句一样

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

法迪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值