• Python + Django4 搭建个人博客(五): 创建并连接数据库


    目录

    创建数据库

    命令行创建数据库

    SQLyog 创建数据库

    连接MySQL数据库

    1、引入pymysql 库

    2、配置连接MySQL

    结语


    系统模块架构

    博客页面功能架构

    上篇,我们模拟了Django实现Web应用的过程,但是没有涉及到和数据库的交互。

    一个完整的Web应用是无法脱离数据库而单独存在的。

    Django作为一个Web框架,有它的一套完整的实现Web应用的模式。

    Django 框架主要关注的是模型(Model)、模板(Template)和视图(Views),称为MTV模式。

    它们各自的职责如下:

    层次

    职责

    模型(Model),即数据存取层

    处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。

    模板(Template),即业务逻辑层

    处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。

    视图(View),即表现层

    存取模型及调取恰当模板的相关逻辑。模型与模板的桥梁。

    简单来说就是Model存取数据,View决定需要调取哪些数据,而Template则负责将调取出的数据以合理的方式展现出来。

    Model部分就是和数据库相关的部分,用于存储数据。

    Django对各种数据库提供了很好的支持,包括PostgreSQL、MySQL、SQLite和Oracle,而且为这些数据库提供了统一的API方法,这些API统称为ORMObject Relational Mapping,简称ORM框架。

    通过使用Django内置的ORM框架可以实现数据库连接和读写操作。

    ORM框架是一种程序技术,用于实现面向对象编程语言中不同类型系统的数据之间的转换。

    从效果上说,它创建了一个可在编程语言中使用的“虚拟对象数据库”,通过对虚拟对象数据库的操作从而实现对目标数据库的操作,虚拟对象数据库与目标数据库是相互对应的。

    下面我们来创建一个数据库并完成Django和MySQL数据库的连接。

    创建数据库

    首先 Django 只能操作到数据表级别,我们可以连接到数据库,然后对数据库里面的表的数据接口和内容进行处理,但是我们无法直接新建数据库,修改数据库级别的参数。

    所以我们需要先手工创建一个数据库。

    这里我分别演示直接通过Windows CMD 终端命令 和通过图形化工具SQLyog创建一个django4blog数据库。

    命令行创建数据库

    首先按下Win + R 运行 CMD,进入命令行终端

    输入命令进入我们前面安装好Mysql数据库的bin文件夹

    比如:

    cd D:\Program Files\mysql-8.0.13-winx64\bin

    接着输入命令: mysqld --console启动Mysql服务器。

    然后输入命令:mysql -u root -p 后输入密码,登录数据库。

    最后我们输入创建数据库的命令:

    create database django4blog default charset=utf8; # 防止编码问题,指定为 utf8

    至此,我们通过命令行完成了一个名为 django4blog 的数据库。

    SQLyog 创建数据库

    如果安装了图形化工具,比如SQLyog,那创建一个数据库就更加简单了。

    首先打开SQLyog登录连接界面。

    输入主机地址,用户名,密码,端口号,点击连接按钮进入数据库图形管理界面。

    通过 数据库--创建数据库 菜单,完成数据库的创建。

    连接MySQL数据库

    Django默认自带SQLite 数据库,但是我们本次的用到的数据库是MySQL。

    要想在Django使用MySQL数据库我们还需要做如下几个步骤:

    1、引入pymysql

    Django使用MySQL需要mysql 驱动,如果你没安装 mysql 驱动,可以执行以下命令安装:

    pip install pymysql

    接着在与 settings.py 同级目录下的 __init__.py 中引入pymysql库:

    1. import pymysql
    2. pymysql.install_as_MySQLdb()

    2、配置连接MySQL

    安装并引入pymysql 之后, 进入DjangoBlog 项目下的DjangoBlog 文件夹,打开setting.py 文件,找到DATABASES配置项,修改DATABSES配置项为如下内容:

    1. # Database
    2. # https://docs.djangoproject.com/en/4.1/ref/settings/#databases
    3. DATABASES = {
    4. 'default': {
    5. 'ENGINE': 'django.db.backends.mysql', # 数据库引擎
    6. 'NAME': 'django4blog', # 数据库名称
    7. 'HOST': '127.0.0.1', # 数据库地址,本机 ip 地址 127.0.0.1
    8. 'PORT': 3306, # 端口
    9. 'USER': 'root', # 数据库用户名
    10. 'PASSWORD': '123456', # 数据库密码
    11. }
    12. }

    数据库配置DATABASES:

    配置数据的连接信息,如连接数据库的模块、数据库名称、数据库的账号密码等,默认连接sqlite数据库。

    结语

    本篇介绍了两种创建数据库的方法,同时我们完成了一个名为django4blog 的数据库创建用于我们整个项目的数据存储。

    同时,我们在django项目中安装了用于连接MySQL 的库: pymysql

    最后我们修改了setting.py 中的数据库配置项。

    至此,我们后续的项目可以通过Django模型直接来操作我们django4blog 的数据了。

    下篇我们来进行整个项目的数据库设计,规划下我们需要几个表,每个数据表需要哪些字段,字段的数据格式都是什么样子的。

  • 相关阅读:
    react的hooks的快速入门教程
    Linux系统进程的个人理解和解释
    神经网络的可解释性方法
    使用SDEI上报RAS故障
    【C++】类
    会声会影下载要钱吗?会声会影2023中文旗舰版下载
    Yakit工具篇:专项漏洞检测的配置和使用
    MySQL锁
    解决小程序自定义弹窗滚动穿透问题
    2022.8.8考试清洁工老马(sweeper)题解
  • 原文地址:https://blog.csdn.net/agelee/article/details/126481296