django ORM 数据库链接配置

前言

django 中链接数据,能够使用pymysql 也能够使用django 自带的框架ORM python

pymysql 操做数据库

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

ORM是个啥

对象关系映射

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

二者的比较

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

Django中如何使用ORM

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

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)app

在项目的__init__.py 中加入以下配置框架

import pymysql pymysql.install_as_MySQLdb()
View Code

3. 去app/models.py里面建立类ide

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语句,去数据库执行工具

五、在django 中查看数据库表数据spa

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

  

      配置数据库链接信息

  

  注意:第一次配置须要下载驱动,在此页面的下面有提示,下载能够。

  添加sqlite3 做为数据源

  

  注意:sqlite3 为文件数据库,数据库实体自己就在django项目目录内,直接右键做为数据源打开便可。

相关文章
相关标签/搜索