orm模型,使用peewee模块建立python和数据库的连接

本文介绍了一种通过ORM方式简化数据库操作的方法,并通过Python的Peewee库演示了如何不使用SQL语句就能完成数据库表的创建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# -*- coding: utf-8 -*-


'''
在上一篇中基本步骤的模型:python ----> mysqldb ---->mysql
虽然路径简单,但是存在如下确定:
    1.假如开发人员不懂MySQL
    2.我们随着业务变化可能要替换另外一种数据库
    3.我们当前的方法对数据库数据的插入、删除和修改操作不方便


在这种情况下,我们提出了 orm (数据库映射) 的概念,模型:

"python"--->用python面向对象描述的数据模型---> "orm" --->将面向对象
    转换为MySQL语法的数据模型 ---> "mysql语法的数据模型"---> "mysql"

'''

#------------------------------------------------------------------
#需要第三方模块 peewee ,peewee 是 orm 模型的一个模块              +
# pip install peewee                                              +
#要先安装好MySQLdb模块                                            +
#------------------------------------------------------------------


#------------------------------------------------------------------
#使用orm模型的peewee模块给数据库新建一个表                        +
#------------------------------------------------------------------

#导入模块
import peewee

#建立链接
connect = peewee.MySQLDatabase(
    database = 'first_database', #数据库名字
    host = 'localhost',  #数据库地址
    user = 'root',  #数据库用户
    passwd = '123'  #对应用户密码
    )

#创建表
    #类名必须大写
    #peewee创建数据库的时候,默认会添加主键id
    #peewee创建数据库字段默认不可为空
class School(peewee.Model):
    name = peewee.CharField(max_length = 32) # 相当于在数据库中定义了 name char(32)
    address = peewee.CharField(max_length = 32) # 相当于在数据库定义了 address char(32)
    age = peewee.IntegerField() # age int
    birthday = peewee.DateTimeField() #日期

    #将表和数据库连接
    class Meta:
        database = connect

if __name__ =="__main__":
    School.create_table()

其执行结果是在first_database中新建了一个表school

在这个过程当中并没有使用MySQL语句,而是利用orm模型,将python语句语句转换为sql语句。

结果如下:

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值