zoukankan      html  css  js  c++  java
  • Django的mysql配置

    Django的mysql配置

    目录

    Django的ORM框架简介:

    Django下配置使用mysql数据库:

    1.首先,安装pymysql(此模块的作用是用python来操作mysql)

    2.创建自己需要连接的数据库。

    3.pycharm连接主机上的数据库(此过程省略)

    4. 修改项目中init.py 加入如下内容来提供pymysql引擎的支持

    5.在setting.py文件中配置数据库

    6.至此,mysql配置完成。启动项目python manage.py runserver


    DjangoORM框架简介:

    ORM即对象关系映射,通过类和对象对数据库进行操作,从而避免了直接使用SQL语句,通过面向对象编程思想,极大程度上方便了用户操作数据库,避免了繁琐的SQL语句。

     

    我是用的是pycharm直接连接Windows上的mysql数据库。用Django3.0版本

     

    Django下配置使用mysql数据库:

    1.首先,安装pymysql(此模块的作用是用python来操作mysql)

    Pip install pymysql

     

    2.创建自己需要连接的数据库。

    create database mywebdb default charset utf8 collate utf8_general_ci;       #这里我创建了一个名为mywebdb的数据库。

     

    3.pycharm连接主机上的数据库(此过程省略)

     

    4. 修改项目中init.py 加入如下内容来提供pymysql引擎的支持

     

    5.在setting.py文件中配置数据库

    找到DATABASES选项,将自带的sqlite3数据表注释,添加mysql数据库选项。这里的选项可以不用刻意记住,需要知道的是有这个选项就可以。

     

     具体参数了解:

    1ENGINE定数据库的后端引擎

    'django.db.backends.mysql'
    'django.db.backends.sqlite3'
    'django.db.backends.oracle'
    'django.db.backends.postgresql'

    • mysql引擎如下:
    • 'django.db.backends.mysql'

    2NAME

    • 指定要连接的数据库的名称
    • 'NAME': 'mywebdb'

    3USER

    • 指定登录到数据库的用户名
    • 'USER':'root'

    4PASSWORD

    • 接数据库时使用的密码。
    • 'PASSWORD':'123456'

    5HOST

    • 连接数据库时使用哪个主机。
    • 'HOST':'127.0.0.1'

    6PORT

    • 连接数据库时使用的端口。
    • 'PORT':'3306'

     

    6.至此,mysql配置完成。启动项目python manage.py runserver

     


    错误处理:

    坑一:

    Django3.0/mysql ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3

    解决办法:

    #在这里,直接在pycharm报错的提示中找到这个base.py文件,注释掉以下部分(35、36行)

    if version < (1, 3, 3):

         raise ImproperlyConfigured("mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)

     

     坑二:

    我在注释上面几行后,重新运行项目,pycharm提示

    following errors occurred on attempt to save files和Unable to save settings: Failed和Cannot Save Files

    提示显示不能保存文件,这里的原因在于pycharm

    Pycharm --->setting取消下面的选项

     

    坑三:

    取消后发现依然提示错误,这次提示的错误时文件“拒绝访问”。

    看到这样的提示第一时间想到的是权限问题,所以我修改了windows上base.py的文件权限,修改权限后,base.py文件可以被修改。

     

    坑四:

    修改base.py文件后运行项目又报以下错误:

    AttributeError: ‘str’ object has no attribute ‘decode’

    #通过错误提示找到operations.py文件,将decode改为encode

    if query is not None:
        query = query.decode(errors='replace')
    return query
    #改为
    if query is not None:
        query = query.encode(errors='replace')
    return query
  • 相关阅读:
    常见的排序算法(四):归并排序
    常见的排序算法(三):快速排序
    常见的排序算法(二):选择排序
    a标签没有闭合引起自动插入很多a标签的问题
    js笔记
    Vue笔记
    CSS笔记
    bootstrap--网格化布局
    backgroud图片充满元素的方法
    bootstrap--概述
  • 原文地址:https://www.cnblogs.com/karkash/p/13474844.html
Copyright © 2011-2022 走看看