Django的mysql配置
Django的mysql配置
目录
1.首先,安装pymysql(此模块的作用是用python来操作mysql)
4. 修改项目中init.py 加入如下内容来提供pymysql引擎的支持
6.至此,mysql配置完成。启动项目python manage.py runserver
Django的ORM框架简介:
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数据库选项。这里的选项可以不用刻意记住,需要知道的是有这个选项就可以。
具体参数了解:
(1)ENGINE指定数据库的后端引擎
'django.db.backends.mysql'
'django.db.backends.sqlite3'
'django.db.backends.oracle'
'django.db.backends.postgresql'
- mysql引擎如下:
- 'django.db.backends.mysql'
(2)NAME
- 指定要连接的数据库的名称
- 'NAME': 'mywebdb'
(3)USER
- 指定登录到数据库的用户名
- 'USER':'root'
(4)PASSWORD
- 接数据库时使用的密码。
- 'PASSWORD':'123456'
(5)HOST
- 连接数据库时使用哪个主机。
- 'HOST':'127.0.0.1'
(6)PORT
- 连接数据库时使用的端口。
- '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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人