首页 > 其他分享 >Django-ORM

Django-ORM

时间:2023-02-10 10:58:51浏览次数:45  
标签:创建 数据库 py Django 关系数据库 ORM mysql

ORM由来

让我们从O/R开始。字母O起源于"对象"(Object),而R则来自于"关系"(Relational)。

几乎所有的软件开发过程中都会涉及到对象和关系数据库。在用户层面和业务逻辑层面,我们是面向对象的。当对象的信息发生变化的时候,我们就需要把对象的信息保存在关系数据库中。

按照之前的方式来进行开发就会出现程序员会在自己的业务逻辑代码中夹杂很多SQL语句用来增加、读取、修改、删除相关数据,而这些代码通常都是极其相似或者重复的。

 

ORM的优势

ORM解决的主要问题是对象和关系的映射。它通常将一个类和一张表一一对应,类的每个实例对应表中的一条记录,类的每个属性对应表中的每个字段。 

ORM提供了对数据库的映射,不用直接编写SQL代码,只需操作对象就能对数据库操作数据。

让软件开发人员专注于业务逻辑的处理,提高了开发效率。

 

ORM的劣势

ORM的缺点是会在一定程度上牺牲程序的执行效率。

ORM的操作是有限的,也就是ORM定义好的操作是可以完成的,一些复杂的查询操作是完成不了。

ORM用多了SQL语句就不会写了,关系数据库相关技能退化...

 

ORM总结

ORM只是一种工具,工具确实能解决一些重复,简单的劳动。这是不可否认的。

但我们不能指望某个工具能一劳永逸地解决所有问题,一些特殊问题还是需要特殊处理的。

但是在整个软件开发过程中需要特殊处理的情况应该都是很少的,否则所谓的工具也就失去了它存在的意义。

 

 

 

1.自己创建数据库

2.连接数据库的配置

在pycharm的项目中找到settings.py文件,在DATABASES字段中进行配置,与创建的数据库进行关联

 

 

DATABASES = {
    'default': {
        # 1)配置数据库,默认的配置先注释掉
        # 'ENGINE': 'django.db.backends.sqlite3',
        # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),

        # 2)添加mysql的搜索引擎
        'ENGINE':"django.db.backends.mysql", #搜索引擎:mysql
        'NAME':"test",  #在mysql中创建的数据库名字
        'USER':"admin", #用户名默认用的都是admin的用户
        'PASSWORD':'123456', #用户密码,自己创建虚拟机时设置的
        'HOST':"127.0.0.1", #ip:如果时远程连接写远程ip,这里做本地测试填127.0.0.1
        'PORT':3000, #端口,自己配置的端口
    }
}

  

3.创建表并同步到数据库

1.在app项目中有一个model.py在model文件需要从models.Model中继承

 

2.创建迁移文件命令如下:
python manage.py makemigrations

 

3.同步到数据库使用命令如下:
python manage.py migrate
使用后全部报ok就行

 

标签:创建,数据库,py,Django,关系数据库,ORM,mysql
From: https://www.cnblogs.com/xujunhui/p/17108147.html

相关文章