python学习笔记(三十五) -- 连接数据库以及SQLAlchemy入门

这篇博客介绍了Python连接数据库的基础知识,包括连接SQLite和MySQL。重点讲解了SQLAlchemy ORM框架的使用,从简单的数据库操作到实现一对多关联。通过示例展示了如何创建表、插入数据、查询数据以及建立实体类与数据库表的关联。
摘要由CSDN通过智能技术生成

Table of Contents

 

数据库类别

python连接数据库

python连接sqlite

python连接mysql

使用SQLAlchemy

简单使用

一对多关联


数据库类别

目前广泛使用的关系数据库有如下几种:

付费的商用数据库:

  • Oracle,典型的高富帅;

  • SQL Server,微软自家产品,Windows定制专款;

  • DB2,IBM的产品,听起来挺高端;

  • Sybase,曾经跟微软是好基友,后来关系破裂,现在家境惨淡。

这些数据库都是不开源而且付费的,最大的好处是花了钱出了问题可以找厂家解决,不过在Web的世界里,常常需要部署成千上万的数据库服务器,当然不能把大把大把的银子扔给厂家,所以,无论是Google、Facebook,还是国内的BAT,无一例外都选择了免费的开源数据库:

  • MySQL,大家都在用,一般错不了;

  • PostgreSQL,学术气息有点重,其实挺不错,但知名度没有MySQL高;

  • sqlite,嵌入式数据库,适合桌面和移动应用。


python连接数据库

python连接sqlite

sqlite是用c编写的,非常小,它被内置于python当中,所以如果使用sqlite,我们无需下载数据库以及与数据库相连接的驱动,使用方式如下。

我们创建一个user表,并向其中插入一行数据

import sqlite3   # 导包


try:
    # 连接到SQLite3
    conn = sqlite3.connect(r'D:\test.db')  # 说白了就是把这个文件读取到内存中,如果没有就创建
    # 创建一个Cursor,用来执行sql语句:
    cursor = conn.cursor()
    # 执行一条sql,创建user表
    cursor.execute('create table user(id varchar(20) primary key, name varchar(20))')  # 表有两列,一列为id,一列为姓名
    # 插入一条数据
    cursor.execute('insert into user(id, name) values(\'1\', \'zzh\')')  # 插入一行数据,id为1,name为zzh
    # 查看插入的数据数
    print(cursor.rowcount)  # rowcount能返回数据库中受影响的行数,因为插入了一行数据,所以返回1
    # 通过connect对象提交事务
    conn.commit()  # 只有提交了事务,数据才真正的被插入到了数据库当中
except Exception as e:
    print(e)
    conn.rollback()  # 出现异常,事务回滚,意思就是再将插入的数据撤销
finally:
    # 关闭cursor
    cursor.close()
    # 关闭数据库连接
    conn.close()



<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值