国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python Django 之連接 Mysql 數(shù)據(jù)庫詳解

這篇具有很好參考價值的文章主要介紹了Python Django 之連接 Mysql 數(shù)據(jù)庫詳解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1 概述

1.1 Mysql 下載和安裝

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

1.2 菜單目錄

  • 主要使用的文件如圖

django連接mysql,Python,數(shù)據(jù)庫,python,django

2 ORM 框架

2.1 連接 Mysql 模塊:mysqlclient

> pip install mysqlclient
  • 若 pip 安裝失敗,可進入 Python 官方庫中下載 whl 文件,操作可參考:
  • 博客:https://blog.csdn.net/qq_34745941/article/details/106341898

2.2 創(chuàng)建數(shù)據(jù)庫

# 創(chuàng)建數(shù)據(jù)庫
> create database Demo DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
> 
> # 展示數(shù)據(jù)庫
> show databases;

django連接mysql,Python,數(shù)據(jù)庫,python,django

2.3 連接 Mysql

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

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',  # 不做修改
        'NAME': 'demo',  # 數(shù)據(jù)庫名
        'USER': 'root',  # 用戶名
        'PASSWORD': '12345',  # 密碼
        'HOST': '127.0.0.1',  # 主機
        'PORT': '3306',  # 端口號(默認)
    }
}

擴展:
Django 也支持其它數(shù)據(jù)庫:官方文檔:https://docs.djangoproject.com/zh-hans/3.2/ref/databases/

2.4 創(chuàng)建表

django連接mysql,Python,數(shù)據(jù)庫,python,django

注意:
① 該類可重復執(zhí)行
② 若類中的字段存在變更,則數(shù)據(jù)庫表中的字段也同步變更
③ 若該類刪除,則數(shù)據(jù)庫中的表也同步刪除

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


# 參數(shù) models.Model 固定
class UserInfo(models.Model):
    name = models.CharField(max_length=32)
    password = models.CharField(max_length=64)
    age = models.IntegerField()

終端中依次執(zhí)行命令:數(shù)據(jù)庫遷移,同步表結構!

> python manage.py makemigrations
> python manage.py migrate

可選,創(chuàng)建管理員
python manage.py createsuperuser

django連接mysql,Python,數(shù)據(jù)庫,python,django

查詢表:

mysql> use demo;
mysql> desc app01_userinfo;

django連接mysql,Python,數(shù)據(jù)庫,python,django

2.5 增刪改查

views.py:

from django.shortcuts import render, HttpResponse
from app01.models import UserInfo


# Create your views here.
def orm(request):
    # 1.添加數(shù)據(jù)
    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.刪除數(shù)據(jù)
    UserInfo.objects.filter(id=3).delete()  # 刪除單條數(shù)據(jù)
    # UserInfo.objects.all().delete()  # 刪除全部數(shù)據(jù)

    # 3.獲取數(shù)據(jù)
    data_list = UserInfo.objects.all()  # return QuerySet 類型數(shù)據(jù)
    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.更新數(shù)據(jù)
    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’

報錯截圖:
django連接mysql,Python,數(shù)據(jù)庫,python,django

  • 原因:較高版本的 mysql 的 ssl 是默認開啟的
  • 解決:關閉 ssl,同下 5 個步驟

【第一步:登錄 mysql,查看 ssl 開啟情況】

C:\Users\Administrator>mysql -u root -p
Enter password: *****
mysql> show variables like '%ssl%';

django連接mysql,Python,數(shù)據(jù)庫,python,django

【第二步:修改 my.ini】
django連接mysql,Python,數(shù)據(jù)庫,python,django

【第三步:重啟 mysql 服務】
django連接mysql,Python,數(shù)據(jù)庫,python,django

【第四步:重新執(zhí)行命令】
django連接mysql,Python,數(shù)據(jù)庫,python,django

【第五步:啟動 DJango 項目】
django連接mysql,Python,數(shù)據(jù)庫,python,django文章來源地址http://www.zghlxwxcb.cn/news/detail-763761.html

到了這里,關于Python Django 之連接 Mysql 數(shù)據(jù)庫詳解的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • python在Django中,如何使用MySQL數(shù)據(jù)庫進行分頁怎么實現(xiàn)

    在Django中,使用MySQL數(shù)據(jù)庫進行分頁是一個相對簡單的任務。Django的ORM提供了內置的分頁功能,你只需要使用Paginator類即可。以下是一個基本的示例,展示了如何在Django中使用MySQL進行分頁: 首先,確保你已經安裝了Django和MySQL,并且已經配置了Django項目以使用MySQL數(shù)據(jù)庫。

    2024年04月29日
    瀏覽(20)
  • Django-drf項目初始化:跨域、認證權限過濾、static靜態(tài)資源路由,mysql數(shù)據(jù)庫連接,登錄注冊功能

    碼云地址:https://gitee.com/liuhaizhang/drf-project-initialization 項目目錄結構: study_drf? ? ? ? ? ? -home ? ? ? ? -static ? ? ? ? -study_drf ? ? ? ? -util ? ? ? ? -manage.py pip install django #drf基于django pip install djangorestframework #drf框架 pip install mysqlclient #連接數(shù)據(jù)庫 pip install djangorestframewo

    2024年02月03日
    瀏覽(22)
  • python常用庫之pymongo庫(Python操作Mongodb數(shù)據(jù)庫)| Django項目連接MongoDB方式選型(MongoEngine)

    github:https://github.com/mongodb/mongo-python-driver PyMongo用于與Python與MongoDB數(shù)據(jù)庫進行交互的工具。bson包是Python的BSON格式 的實現(xiàn)。Pymongo包是MongoDB的本地Python驅動程序。gridfs包是gridfs 的pymongo實現(xiàn)。 Pymongo支持MongoDB 3.6、4.0、4.2、4.4、5.0和6.0。 總結:PyMongo 是 MongoDB 與 Django 交互的標準

    2024年02月10日
    瀏覽(26)
  • Django連接數(shù)據(jù)庫

    Django連接數(shù)據(jù)庫

    mysql -u?root -p show databases; 在settings.py文件中進行配置和修改 在models.py文件中進行修改 創(chuàng)建表 執(zhí)行命令: python manage.py makemigrations python manage.py migrate 條件:在setings保證app已經注冊 刪除表 當需要刪除表時,則再models.py中注釋表結構,然后重新執(zhí)行命令即可。 修改表 新增列的

    2024年04月27日
    瀏覽(26)
  • Django連接多個數(shù)據(jù)庫

    為了讓不同業(yè)務的數(shù)據(jù)分離,落到不同的庫,使用 django 連接多個數(shù)據(jù)庫。 Django 使用 default 數(shù)據(jù)庫,如果沒有其他選擇 default 可以沒有,但是必須設置一個空字典 設置多個數(shù)據(jù)庫,需要同步多次。這里比較麻煩。 遷移將會把所有model的所有表鏡像的遷移到兩個庫,自帶的指

    2024年02月11日
    瀏覽(25)
  • django如何連接sqlite數(shù)據(jù)庫?

    django如何連接sqlite數(shù)據(jù)庫?

    目錄 一、SQLite數(shù)據(jù)庫簡介 二、Django連接SQLite數(shù)據(jù)庫 1、配置數(shù)據(jù)庫 2、創(chuàng)建數(shù)據(jù)庫表 三、使用Django ORM操作SQLite數(shù)據(jù)庫 1、定義模型 2、創(chuàng)建對象 3、查詢對象 總結 本文將深入探討如何在Django框架中連接和使用SQLite數(shù)據(jù)庫。我們將介紹SQLite數(shù)據(jù)庫的特點,Django的數(shù)據(jù)庫配置,以

    2024年02月06日
    瀏覽(34)
  • django連接本地數(shù)據(jù)庫并執(zhí)行增刪改查

    django連接本地數(shù)據(jù)庫并執(zhí)行增刪改查

    models.py文件根據(jù)數(shù)據(jù)庫表映射出對應的類 在views.py中實現(xiàn)增刪改查操作: 增: 刪: 改: 查:

    2024年02月20日
    瀏覽(18)
  • django使用mysql數(shù)據(jù)庫

    django使用mysql數(shù)據(jù)庫

    Django開 發(fā)操作數(shù)據(jù)庫比使用pymysql操作更簡單,內部提供了ORM框架。 下面是pymysql 和orm操作數(shù)據(jù)庫的示意圖,pymysql就是mysql的驅動,代碼直接操作pymysql ,需要自己寫增刪改查的語句 django 就是也可以使用pymysql、mysqlclient作為驅動,但是目前對mysqlclient的支持更好,在驅動的基礎

    2024年02月14日
    瀏覽(20)
  • django框架——實現(xiàn)MySQL數(shù)據(jù)庫數(shù)據(jù)的刪除

    在html中的刪除按鈕中綁定js文件中的事件,帶上參數(shù),點擊即觸發(fā)(刪除按鈕不能是a鏈接,不然報錯) js文件中實現(xiàn)該功能,發(fā)起ajax請求到后端視圖中對數(shù)據(jù)庫進行操作 路由導入 在視圖里面實現(xiàn)刪除功能

    2024年02月13日
    瀏覽(93)
  • Django操作MySQL數(shù)據(jù)庫的優(yōu)化方法

    Django 是一個很流行的 Web 框架,而 MySQL 是常用的關系型數(shù)據(jù)庫之一。在使用 Django 開發(fā) Web 應用時,我們經常需要使用 MySQL 存儲數(shù)據(jù),因此如何加速 MySQL 是我們需要關注的問題。本文將介紹一些方法來優(yōu)化 Django 中 MySQL 的性能。 使用適當?shù)乃饕?索引是 MySQL 中提高查詢性能的

    2024年02月10日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包