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

本文介绍了如何在Django中配置和使用MySQL数据库,包括通过命令行和SQLyog创建数据库,安装pymysql库,以及修改Django设置以连接MySQL。通过Django的ORM框架,开发者可以方便地进行数据操作。接下来的文章将涉及项目数据库设计和表结构规划。
摘要由CSDN通过智能技术生成

目录

创建数据库

命令行创建数据库

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库:

import pymysql 
pymysql.install_as_MySQLdb()

2、配置连接MySQL

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

# Database
# https://docs.djangoproject.com/en/4.1/ref/settings/#databases

DATABASES = {
 'default': {
    'ENGINE': 'django.db.backends.mysql', # 数据库引擎
    'NAME': 'django4blog', # 数据库名称
    'HOST': '127.0.0.1', # 数据库地址,本机 ip 地址 127.0.0.1
    'PORT': 3306, # 端口
    'USER': 'root', # 数据库用户名
    'PASSWORD': '123456', # 数据库密码
 }
}

数据库配置DATABASES:

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

结语

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

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

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

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

李威威wiwi

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

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

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

打赏作者

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

抵扣说明:

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

余额充值