当前位置: 移动技术网 > IT编程>脚本编程>Python > ORM

ORM

2019年07月15日  | 移动技术网IT编程  | 我要评论

普通人生by镜水,爱君如梦国语,虫群卫士希赛克

简单介绍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中

    这里可能会遇到一个错误,解决办法请参见:    

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

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网