ORM

2019-07-24 09:24:23来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

简单介绍ORM:

  对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换 [1]。从效果上说,它其实是创建了一个可在编程语言里使用的--“虚拟对象数据库”。

简单分析ORM的优缺点:

  优点:1.简单,不用自己写SQL语句

     2.开发效率高

  缺点:1.你需要记住ORM的特殊语法

        2.因为不是专业的SQL语句,相对于某些大佬的SQL语句,执行效率肯定有差距

ORM中的对应关系:

  类——数据表

  对象——数据行

  属性——字段

ORM能做的事:

  1.操作数据表——>创建表、删除表、修改表、操作models.py里面的类

  2.操作数据行——>数据的增删改查

  但是ORM不能创建数据库,需要事先自己手动创建数据库。

使用Django的ORM详细步骤:

  1.自己手动创建数据库

    create database 数据库名;

  2.在Django项目中设置连接数据库的相关配置(告诉Django连接哪一个数据库)

 1 # 与数据库相关的配置
 2 DATABASES = {
 3     'default': {
 4         # 连接数据库的类型
 5         'ENGINE': 'django.db.backends.mysql',
 6         # 连接数据库的地址
 7         'HOST':'127.0.0.1',
 8         # 连接数据库的端口
 9         'PORT':3306,
10         # 数据库名称
11         'NAME': 'day61',
12         # 用户
13         'USER':'root',
14         # 密码
15         'PASSWORD':'000000'
16     }

  3.告诉Djiango用pymysql代替默认的MySQLDB连接MySQL数据库 

1 import pymysql
2 # 告诉django用pymysql来代替默认的mysqldb
3 pymysql.install_as_MySQLdb()

  4.在app下面的models.py文件夹中定义一个类,这个类必须继承models.Model.

1 from django.db import models
2 
3 # Create your models here.
4 # ORM相关的只能写在这个文件里,写在其他文件的话django找不到
5 
6 class UserInfo(models.Model):
7     id = models.AutoField(primary_key=True) # 创建一个自增的主键字段
8     name = models.CharField(null=False,max_length=20) # 创建一个varchar(20)类型的不能为空的字段

  5.在终端执行两个命令

    注:每次在models.py对ORM语句修改后,都要执行以下这两个语句。

    (1)python manage.py makemigrations————这句相当于每次改动后,将改动保存到项目文件夹下的migrations中

    这里可能会遇到一个错误,解决办法请参见:    https://blog.csdn.net/weixin_33127753/article/details/89100552

    (2)python manage.py migrate————这句相当于把改动翻译成SQL语句,然后去数据库中执行


原文链接:https://www.cnblogs.com/missdx/p/11186930.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:PyCharm如何导入python项目

下一篇:python 之网络编程(基于TCP协议Socket通信的粘包问题及解决)