码迷,mamicode.com
首页 > 数据库 > 详细

django ORM 数据库连接配置

时间:2019-01-28 01:09:42      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:elf   建立连接   数据库表   init   nbsp   tin   mod   app   注意   

前言

django 中连接数据,可以使用pymysql 也可以使用django 自带的框架ORM 

pymysql 操作数据库

用pymysql连接MySQL数据库查询数据
1. import pymysql
2. 建立连接
3. 获取光标
4. 执行SQL语句
5. 获取数据
6. 关闭光标
7. 关闭连接

ORM是个啥

对象关系映射

类       数据表
属性      字段
对象        数据行

两者的比较

使用pymysql连接数据库缺点:
1. 麻烦
2. 自己写SQL语句!!!
使用ORM工具连接数据库
- 优点:
1. 不用自己写SQL语句!!!
- 缺点:
1. 执行效率不高(需要翻译成语句再去执行)

Django中如何使用ORM

1. 告诉Django连接哪个MySQL数据库(settings.py)

技术分享图片
settings.py  中数据库连接配置
#默认的配置,默认使用的是django 自带的数据库sqlite3
# DATABASES = {
#     ‘default‘: {
#         ‘ENGINE‘: ‘django.db.backends.sqlite3‘,
#         ‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),
#     }
# }

DATABASES = {
    default: {
        ENGINE: django.db.backends.mysql,         #引擎
        NAME: cmdb,                               #数据库名称
        HOST:127.0.0.1,                           #主机地址
        PORT:3306,                                  #端口
        USER:root,                                #用户名
        PASSWORD:111111,                          #密码
    }
}
View Code

2. 告诉Django用pymysql连接MySQL数据库 (默认用的是MySQLDB)

在项目的__init__.py 中加入如下配置

技术分享图片
import pymysql
pymysql.install_as_MySQLdb()
View Code

3. 去app/models.py里面创建类

技术分享图片
from django.db import models
class IDC(models.Model):
    """
    机房信息
    """
    name = models.CharField(机房, max_length=32)
    floor = models.IntegerField(楼层, default=1)

    class Meta:
        verbose_name_plural = "机房表"

    def __str__(self):
        return self.name
View Code

4. 让Django去数据库帮我创建类对应的数据表
  1. python manage.py makemigrations           --> 将models.py的改动记录在小本本上
  2. python manage.py migrate              --> 将变更记录翻译成SQL语句,去数据库执行

5、在django 中查看数据库表数据

  添加数据源(mysql 作为数据源)

  技术分享图片

      配置数据库连接信息

  技术分享图片

  注意:第一次配置需要下载驱动,在此页面的下面有提示,下载可以。

  添加sqlite3 作为数据源

  技术分享图片

  注意:sqlite3 为文件数据库,数据库实体本身就在django项目目录内,直接右键作为数据源打开即可。

 

django ORM 数据库连接配置

标签:elf   建立连接   数据库表   init   nbsp   tin   mod   app   注意   

原文地址:https://www.cnblogs.com/fanggege/p/10327920.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!