Django4全栈进阶之路6 对各类数据库连接设置
Django 4 支持多种类型的数据库连接,包括 MySQL、PostgreSQL、SQLite、Oracle 等。对于不同类型的数据库,需要进行不同的设置。下面是 Django 4 对各类数据库连接的设置方法。
MySQL
在 Django 4 中连接 MySQL 数据库,需要使用 django.db.backends.mysql 引擎。在 settings.py 文件中进行配置,示例代码如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mydatabase',
'USER': 'mydatabaseuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '3306',
}
}
其中,'ENGINE' 参数指定数据库类型为 MySQL,'NAME'、'USER'、'PASSWORD' 分别指定数据库名称、用户名和密码。'HOST' 参数指定数据库所在的主机名或 IP 地址,这里是本地主机。'PORT' 参数指定数据库连接的端口号,这里是 MySQL 默认端口 3306。
PostgreSQL
在 Django 4 中连接 PostgreSQL 数据库,需要使用 django.db.backends.postgresql 引擎。在 settings.py 文件中进行配置,示例代码如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydatabase',
'USER': 'mydatabaseuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '5432',
}
}
其中,'ENGINE' 参数指定数据库类型为 PostgreSQL,'NAME'、'USER'、'PASSWORD' 分别指定数据库名称、用户名和密码。'HOST' 参数指定数据库所在的主机名或 IP 地址,这里是本地主机。'PORT' 参数指定数据库连接的端口号,这里是 PostgreSQL 默认端口 5432。
SQLite
在 Django 4 中连接 SQLite 数据库,需要使用 django.db.backends.sqlite3 引擎。在 settings.py 文件中进行配置,示例代码如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
其中,'ENGINE' 参数指定数据库类型为 SQLite,'NAME' 参数指定数据库文件的路径。
Oracle
在 Django 4 中连接 Oracle 数据库,需要使用 django.db.backends.oracle 引擎。在 settings.py 文件中进行配置,示例代码如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
'NAME': 'mydatabase',
'USER': 'mydatabaseuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '1521',
'OPTIONS': {
'threaded': True,
},
}
}
SQL Server
在 Django 4 中连接 SQL Server 数据库,可以使用 django-pyodbc-azure 库提供的 PyODBC 驱动。首先,需要安装该库,可以使用 pip 命令进行安装:
pip install django-pyodbc-azure
安装完成后,在 settings.py 文件中添加以下代码:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sql_server',
'NAME': '<database_name>',
'HOST': '<server_name>.database.windows.net',
'PORT': '1433',
'USER': '<username>@<server_name>',
'PASSWORD': '<password>',
'OPTIONS': {
'driver': 'ODBC Driver 17 for SQL Server',
},
},
}
其中,<database_name> 为数据库名称,<server_name> 为服务器名称,<username> 为登录用户名,<password> 为登录密码。'OPTIONS' 参数中指定了 PyODBC 驱动程序的名称,这里使用的是 ODBC Driver 17 for SQL Server。如果使用其他版本的驱动程序,可以相应地修改。此外,还可以在 'OPTIONS' 参数中指定其他 PyODBC 驱动程序的选项,例如设置连接超时时间。
需要注意的是,在使用 SQL Server 数据库时,还需要安装相应的数据库驱动程序,例如 PyODBC。可以通过 pip 命令进行安装:
pip install pyodbc
安装完成后,在操作系统中配置 ODBC 数据源,以便在 Django 中使用。可以使用 ODBC 数据源管理员来配置,例如 Windows 系统中的 "ODBC 数据源 (64 位)"。 配置完成后,可以在 Django 中使用 'ENGINE': 'django.db.backends.sql_server' 来指定使用 PyODBC 驱动程序连接 SQL Server 数据库。
Django4全栈进阶之路6 对各类数据库连接设置的更多相关文章
- web前端全栈学习之路
web前端全栈学习之路 --- 陆续更新中 一.HTML相关 1.HTML常用标签:http://www.cnblogs.com/wyb666/p/8733699.html 2.HTML5基础: 3. ...
- python 全栈开发之路 day1
python 全栈开发之路 day1 本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可 ...
- 你的Node应用,对接分布式链路跟踪系统了吗?(一) 原创: 金炳 Node全栈进阶 4天前 戳蓝字「Node全栈进阶」关注我们哦
你的Node应用,对接分布式链路跟踪系统了吗?(一) 原创: 金炳 Node全栈进阶 4天前 戳蓝字「Node全栈进阶」关注我们哦
- C#.Net全栈工程师之路-学习路径
C#.Net全栈工程师之路-学习路径 按架构分: C/S架构: B/S架构: Mobile移动开发: 按技术点分: C#编程基础以及OOP面向对象编程: 数据库基础以及高级应用(MYSQL+MSSQL ...
- “全栈2019”Java多线程第四章:设置和获取线程名称
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- “全栈2019”Java第八章:IntelliJ IDEA设置注释不显示在行首
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- 战争热诚的python全栈开发之路
从学习python开始,一直是自己摸索,但是时间不等人啊,所以自己为了节省时间,决定报个班系统学习,下面整理的文章都是自己学习后,认为重要的需要弄懂的知识点,做出链接,一方面是为了自己找的话方便,一方 ...
- Python全栈开发之路 【第四篇】:Python基础之函数
本节内容 函数def: 1.位置参数,默认参数 2.位置参数,关键参数 3.如果参数中出现 *users,传递的参数就可以不再是固定的个数, 传过来的所有元素进行打包成元组 *args,**kwarg ...
- Python全栈开发之路 【第七篇】:面向对象编程设计与开发(1)
本节内容 一.编程范式 编程指的是写程序.敲代码,就是指程序员用特定的语法.数据结构和算法编写的代码,目的是来告诉计算机如何执行任务的. 在编程的世界里最常见的两大流派是:面向过程与面向对象.“功夫的 ...
- Python全栈开发之路 【第一篇】:Python 介绍
本节内容 一.Python介绍 python的创始人为荷兰人——吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本 ...
随机推荐
- mysql统计特定字符串出现次数
其中'test'为原始字符串,'t'为特定字符串 SELECT floor((char_length('test') - char_length(replace('test', 't', '')) ...
- Python批量采集百度资讯文章,如何自定义采集日期范围
01 引言 大家好!蜡笔小曦有个朋友是做能源相关工作的,她想要有一个工具以天为单位持续地采集百度资讯中能源相关的文章进行留存和使用. 其中有个需求点是说能够自定义采集的开始日期和结束日期,这样更加灵活 ...
- obs推流核心流程分析
前置步骤和录屏是一样的,见我的上一篇文章 https://www.cnblogs.com/billin/p/17219558.html bool obs_output_actual_start(obs ...
- 算法学习笔记(19): 树上启发式合并(DSU on tree)
树上启发式合并 DSU on tree,我也不知道DSU是啥意思 这是一种看似特别玄学的优化 可以把树上部分问题由 \(O(n^2)\) 优化到 \(O(n \log n)\). 例如 CodeFor ...
- CAS 6.x + Delegated Authentication SAML2.0 配置记录
最近领导派了一个活儿, 需要把我们CAS系统的身份识别交给甲方的系统, 甲方的系统是SAML2.0的协议. 由于之前对SAML2.0协议了解不多,折腾了不少时间,在这里记录一下.以后忘掉还可以看看. ...
- urllib.parse的使用
urllib简介 urllib是pyhton自带的标准库用于网络请求库,无需安装,直接引用 通常用于爬虫开发,API(应用程序编程接口)数据获取和测试 urllib库的4大模块 urllib.requ ...
- InnoDB Buffer Pool改进LRU页面置换
由于硬盘和内存的造价差异,一台主机实例的硬盘容量通常会远超于内存容量.对于数据库等应用而言,为了保证更快的查询效率,通常会将使用过的数据放在内存中进行加速读取. 数据页与索引页的LRU 数据页和索引页 ...
- SpringBoot进阶教程(七十五)数据脱敏
无论对于什么业务来说,用户数据信息的安全性无疑都是非常重要的.尤其是在数字经济大火背景下,数据的安全性就显得更加重要.数据脱敏可以分为两个部分,一个是DB层面,防止DB数据泄露,暴露用户信息:一个是接 ...
- 阿里版ChatGPT:通义千问pk文心一言
随着 ChatGPT 热潮卷起来,百度发布了文心一言.Google 发布了 Bard,「阿里云」官方终于也宣布了,旗下的 AI 大模型"通义千问"正式开启测试! 申请地址:http ...
- Nucleistudio+Vivado协同仿真教程
创建Vivado工程 1.创建工程: 在Vivado中创建工程,命名随意,路径随意: 2.配置工程: 这里可以选择是否添加源文件等,我们先不添加: 3.选择FPGA核心: 选择MCU200T对应的FP ...