文章目录

1 概述1.1 Mysql 下载和安装1.2 菜单目录

2 ORM 框架2.1 连接 Mysql 模块:mysqlclient2.2 创建数据库2.3 连接 Mysql2.4 创建表2.5 增删改查

3 扩展3.1 ERROR:2026, 'SSL connection error: unknown error number'

1 概述

1.1 Mysql 下载和安装

博客:https://blog.csdn.net/qq_34745941/article/details/122549376若已安装,请忽略。

1.2 菜单目录

主要使用的文件如图

2 ORM 框架

2.1 连接 Mysql 模块:mysqlclient

> pip install mysqlclient

若 pip 安装失败,可进入 Python 官方库中下载 whl 文件,操作可参考:博客:https://blog.csdn.net/qq_34745941/article/details/106341898

2.2 创建数据库

# 创建数据库

> create database Demo DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

>

> # 展示数据库

> show databases;

2.3 连接 Mysql

在 settings.py 中,配置 Mysql 的连接串

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql', # 不做修改

'NAME': 'demo', # 数据库名

'USER': 'root', # 用户名

'PASSWORD': '12345', # 密码

'HOST': '127.0.0.1', # 主机

'PORT': '3306', # 端口号(默认)

}

}

扩展: Django 也支持其它数据库:官方文档:https://docs.djangoproject.com/zh-hans/3.2/ref/databases/

2.4 创建表

注意: ① 该类可重复执行 ② 若类中的字段存在变更,则数据库表中的字段也同步变更 ③ 若该类删除,则数据库中的表也同步删除

settings.py 中:

INSTALLED_APPS = [

'django.contrib.admin',

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.messages',

'django.contrib.staticfiles',

'app01.apps.App01Config' # 注册项目

]

models.py 中:

from django.db import models

# 参数 models.Model 固定

class UserInfo(models.Model):

name = models.CharField(max_length=32)

password = models.CharField(max_length=64)

age = models.IntegerField()

终端中依次执行命令:数据库迁移,同步表结构!

> python manage.py makemigrations

> python manage.py migrate

可选,创建管理员 python manage.py createsuperuser

查询表:

mysql> use demo;

mysql> desc app01_userinfo;

2.5 增删改查

views.py:

from django.shortcuts import render, HttpResponse

from app01.models import UserInfo

# Create your views here.

def orm(request):

# 1.添加数据

UserInfo.objects.create(name="张三", password=123, age=18)

UserInfo.objects.create(name="李四", password=456, age=20)

UserInfo.objects.create(name="王五", password=789, age=22)

# 2.删除数据

UserInfo.objects.filter(id=3).delete() # 删除单条数据

# UserInfo.objects.all().delete() # 删除全部数据

# 3.获取数据

data_list = UserInfo.objects.all() # return QuerySet 类型数据

for obj in data_list:

print(obj.id, obj.name, obj.password, obj.age)

row_obj = UserInfo.objects.filter(id=1).first()

print(row_obj.id, row_obj.name, row_obj.password, row_obj.age)

# 4.更新数据

UserInfo.objects.filter(id=1).update(age=30)

return HttpResponse("成功")

urls.py:

from django.urls import path

from app01 import views

urlpatterns = [

# path('admin/', admin.site.urls),

# ORM 测试

path('orm/', views.orm)

]

3 扩展

3.1 ERROR:2026, ‘SSL connection error: unknown error number’

报错截图:

原因:较高版本的 mysql 的 ssl 是默认开启的解决:关闭 ssl,同下 5 个步骤

【第一步:登录 mysql,查看 ssl 开启情况】

C:\Users\Administrator>mysql -u root -p

Enter password: *****

mysql> show variables like '%ssl%';

【第二步:修改 my.ini】

【第三步:重启 mysql 服务】

【第四步:重新执行命令】

【第五步:启动 DJango 项目】

参考阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。