Python中使用数据库SQLite和MySQL
一.数据库SQLite
1 建立数据库与建立表
直接来看例子:
import sqlite3conn = sqlite3.connect("test.db");
c = conn.cursor();
c.execute("CREATE TABLE IF NOT EXISTS students (sid INTEGER PRIMARY KEY, name TEXT)");
conn.commit();
conn.close();
2 插入、删除、修改
import sqlite3conn = sqlite3.connect(":memory:");
c = conn.cursor();
c.execute("CREATE TABLE students (""sid INTEGER PRIMARY KEY,"" name TEXT)");
conn.commit();c.execute("INSERT INTO students VALUES(?, ?)", (1, "Alice"));
c.execute("INSERT INTO students VALUES(?, ?)", (2, "Bob"));
c.execute("INSERT INTO students VALUES(?, ?)", (3, "Peter"));c.execute("DELETE FROM students WHERE sid = ?", (1, ));
c.execute("UPDATE students SET name = ? WHERE sid = ?", ("Mark4", 3));conn.commit();# 查询数据的SQL语句
SQL = ''' SELECT * FROM STUDENTs;'''
# 查询数据
c.execute(SQL)
for row in c.fetchall():print(row)# c.execute("SELECT * FROM students");# print c.fetchall();conn.close();
3.把上面的操作写成函数形式:
import sqlite3
conn = sqlite3.connect(":memory:");def initialize(conn):c = conn.cursor();c.execute("CREATE TABLE students (sid INTEGER PRIMARY KEY, name TEXT)");conn.commit();def insert(conn, sid, name):c = conn.cursor();t = (sid, name);c.execute("INSERT INTO students VALUES (?, ?)", t);conn.commit();def delete(conn, sid):c = conn.cursor();t = (sid, );c.execute("DELETE FROM students WHERE sid = ?", t);conn.commit();def update(conn, sid, name):c = conn.cursor();t = (name, sid);c.execute("UPDATE students SET name = ? WHERE sid = ?", t);conn.commit();def display(conn):c = conn.cursor();c.execute("SELECT * FROM students");print(c.fetchall());db_name = ":memory:";
conn = sqlite3.connect(db_name);initialize(conn);print("Insert 3 records.")
insert(conn, 1, "Alice");
insert(conn, 2, "Bob");
insert(conn, 3, "Peter");
display(conn);print("Delete the record where sid = 1.")
delete(conn, 1);
display(conn);print("Update the record where sid = 3.")
update(conn, 3, "Mark");
display(conn);conn.close();
Python中使用数据库SQLite和MySQL相关推荐
- Python中使用数据库SQLite
参考原文 廖雪峰Python教程 使用SQLite SQLite是一种嵌入式数据库,它的数据库就是一个文件.由于SQLite本身是用C写的,而且体积很小,所以经常被集成到各种应用程序中,甚至在IOS和 ...
- 一文详解python中的数据库操作
python中的数据库操作 一.数据库编程接口 1. 连接对象 二.使用内置的SQLite 1.创建数据库文件 2.操作SQLite 三.MySql数据库的使用 3.1 安装MySql 3.2 设置环 ...
- python mysql ssh隧道_在python中使用ssh隧道连接mysql
通常为了保证数据库安全,不会允许直接连接数据库,而是需要通过SSH隧道去连接服务器背后的数据库: 今天我在用Python连接远程的MySQL时,直连遇到了无法连接的情况,使用了SSH隧道之后解决了问题 ...
- python中操作数据库中游标的使用方法
cursor就是一个Cursor对象,这个cursor是一个实现了迭代器(def__iter__())和生成器(yield)的MySQLdb对象,这个时候cursor中还没有数据,只有等到fetcho ...
- python脚本迁移数据库_Python迁移MySQL数据到MongoDB脚本
MongoDB是一个文档数据库,在存储小文件方面存在天然优势.随着业务求的变化,需要将线上MySQL数据库中的行记录,导入到MongoDB中文档记录. 一.场景:线上MySQL数据库某表迁移到Mong ...
- android开发中的数据库SQLite的使用
其实学习android很久了,关于数据存储,之前学习的时候也一同学习过,编程这些东西很久没用都忘得差不多了,最近做个项目要用到,所以又学习了一遍. android中关于数据的存储有好几种,这次主要是S ...
- python数据存储系列教程——python中redis数据库操作:连接、增删查改、多级路径
全栈工程师开发手册 (作者:陈玓玏) python教程全解 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品 ...
- python数据存储系列教程——python中mongodb数据库操作:连接、增删查改、多级路径
全栈工程师开发手册 (作者:陈玓玏) python教程全解 调试环境python3.6,调试python操作mongodb数据库,首先要在本地或服务器安装mongodb数据库.安装参考:http:// ...
- Android中有关数据库SQLite的介绍
SQLite是android提供的一个关系型数据库.今天要总结的主要内容就是它. 在使用SQLite的时候用到的抽象类是 SQLiteOpenHelper 有关这个函数的详细内容你可以在Android ...
最新文章
- mysql子查询批量找id最大的
- 【 MATLAB 】使用 impz 函数计算并画出脉冲响应
- 520,花一夜给女神写走迷宫游戏
- 计算机视觉:目标检测的发展历程与基础概念
- Linux平台安装MongoDB(亲测)
- 从程序猿到SAP产品经理,我是如何转型的?
- 号称迄今为止最快,.NET6带来了什么?
- avg最多用多少列 mysql_MySQL之聚合数据(AVG,COUNT,MAX,MIN,SUM)
- 3109. [CQOI2013]新数独【DFS】
- Pycharm中设置py文件头部注释信息
- 让你人际关系更上一层楼的26条原则
- 关于ABAP事件的一张图
- 2018年3月11日论文阅读
- 2.1.0 Python初识面向对象
- IDEA设置护眼浅绿色背景
- 华为机顶盒视频播放代码
- arm服务器虚拟化云手机,arm虚拟化部署的云手机有哪些优缺点
- 王者勋章服务器维护中,【维护】4月1日官方维护公告(抢鲜服)
- 怎么查看笔记本内存条型号_笔记本如何加内存条之如何查看笔记本内存品牌和型号...
- Linux/Android——input_handler之evdev (四)
热门文章
- org.springframework.beans.factory.BeanCreationException: Error creating bean with name
- Commun. Biol. | 人工智能加速抗生素发现
- J. Cheminform. | 基于SMILES的利用骨架的分子生成模型
- Smiles2vec | 用于预测化学性质的深度神经网络
- RDKit toolkit实战一:调用Python API
- K-d tree 算法
- python窗体开发环境_Python窗口开发环境boa-constructor教程2:创建状态栏:
- 局域网连接其他机器命令_弱电工程师必备技能,PING命令使用方法大全
- QIIME 2教程. 22命令行界面q2cli(2020.11)
- csvtk:高效命令行版极简dplyr