Django笔记二十二之多数据库操作

这一篇笔记介绍一下多数据库操作。

在第十篇笔记的时候,简单介绍过 using() 的使用方法,多个数据库就是通过 using(db_alias) 的方式来来指定选中的数据库,这里介绍一下同步库表结构时候的操作。

  1. 定义方式
  2. 同步命令
  3. 指定数据库操作

1、定义方式

在 settings.py 的 DATABASES 变量中可以定义多个数据库,如果是多个数据库,示例如下:

DATABASES = {
    'default': {
        'NAME': 'app_data',
        'ENGINE': 'django.db.backends.postgresql',
        'USER': 'postgres_user',
        'PASSWORD': 's3krit'
    },
    'users': {
        'NAME': 'user_data',
        'ENGINE': 'django.db.backends.mysql',
        'USER': 'mysql_user',
        'PASSWORD': 'superS3cret'
    },
    'customers': {
        'NAME': 'customer_data',
        'ENGINE': 'django.db.backends.mysql',
        'USER': 'mysql_cust',
        'PASSWORD': 'veryPriv@ate'
    }
}

通过 DATABASES 的 key 定义不同数据库的名称,使用的时候就可以根据这几个 key 来连接访问。

2、同步命令

之前介绍过 migrate 的相关命令,比如:

python3 manage.py migrate

之前的这种操作是因为系统都是使用的默认的数据库,也就是 default,如果是需要对其他数据库进行相关 migrate 的操作,需要通过 --database=db_alias 的命令来指定数据库。

比如需要对 users 数据库进行表结构的操作,命令如下:

python3 manage.py migrate --database=users

当然,如果我们使用的还是 default 数据库,那么加不加 --database 参数都可以。

3、指定数据库操作

对于数据库的操作,比如说获取 Blog 这个 model 的所有数据,如果是 default 数据库,那么命令则是:

Blog.objects.all()

而如果这个 model 是指定的其他数据库,比如 users,那么使用前需要通过 using(db_alias) 来指定:

db_alias = "users"
Blog.objects.using(db_alias).all()

以及一些其他的操作:

https://zhixing.bjtu.edu.cn/space-uid-421552.html
https://zhixing.bjtu.edu.cn/space-uid-421553.html
https://zhixing.bjtu.edu.cn/space-uid-421554.html
https://zhixing.bjtu.edu.cn/space-uid-421555.html
https://zhixing.bjtu.edu.cn/space-uid-421556.html
https://zhixing.bjtu.edu.cn/space-uid-421557.html
https://zhixing.bjtu.edu.cn/space-uid-421558.html
https://zhixing.bjtu.edu.cn/space-uid-421559.html
https://zhixing.bjtu.edu.cn/space-uid-421560.html
https://zhixing.bjtu.edu.cn/space-uid-421561.html
https://zhixing.bjtu.edu.cn/space-uid-421562.html
https://zhixing.bjtu.edu.cn/space-uid-421563.html
https://zhixing.bjtu.edu.cn/space-uid-421564.html
https://zhixing.bjtu.edu.cn/space-uid-421565.html
https://zhixing.bjtu.edu.cn/space-uid-421566.html
https://zhixing.bjtu.edu.cn/space-uid-421567.html
https://zhixing.bjtu.edu.cn/space-uid-421568.html
https://zhixing.bjtu.edu.cn/space-uid-421569.html
https://zhixing.bjtu.edu.cn/space-uid-421570.html
https://zhixing.bjtu.edu.cn/space-uid-421571.html
https://zhixing.bjtu.edu.cn/space-uid-421572.html
https://zhixing.bjtu.edu.cn/space-uid-421573.html
https://zhixing.bjtu.edu.cn/space-uid-421574.html
https://zhixing.bjtu.edu.cn/space-uid-421575.html
https://zhixing.bjtu.edu.cn/space-uid-421576.html
https://zhixing.bjtu.edu.cn/space-uid-421577.html
https://zhixing.bjtu.edu.cn/space-uid-421578.html
https://zhixing.bjtu.edu.cn/space-uid-421579.html
https://zhixing.bjtu.edu.cn/space-uid-421580.html
https://zhixing.bjtu.edu.cn/space-uid-421581.html
https://zhixing.bjtu.edu.cn/space-uid-421582.html
https://zhixing.bjtu.edu.cn/space-uid-421583.html
https://zhixing.bjtu.edu.cn/space-uid-421584.html
https://zhixing.bjtu.edu.cn/space-uid-421585.html
https://zhixing.bjtu.edu.cn/space-uid-421586.html
https://zhixing.bjtu.edu.cn/space-uid-421587.html
https://zhixing.bjtu.edu.cn/space-uid-421588.html
https://zhixing.bjtu.edu.cn/space-uid-421589.html
https://zhixing.bjtu.edu.cn/space-uid-421590.html
https://zhixing.bjtu.edu.cn/space-uid-421591.html
https://zhixing.bjtu.edu.cn/space-uid-421592.html
https://zhixing.bjtu.edu.cn/space-uid-421593.html
https://zhixing.bjtu.edu.cn/space-uid-421594.html
https://zhixing.bjtu.edu.cn/space-uid-421595.html
https://zhixing.bjtu.edu.cn/space-uid-421596.html
https://zhixing.bjtu.edu.cn/space-uid-421597.html
https://zhixing.bjtu.edu.cn/space-uid-421598.html
https://zhixing.bjtu.edu.cn/space-uid-421599.html
https://zhixing.bjtu.edu.cn/space-uid-421600.html
https://zhixing.bjtu.edu.cn/space-uid-421601.html
https://zhixing.bjtu.edu.cn/space-uid-421602.html
https://zhixing.bjtu.edu.cn/space-uid-421603.html
https://zhixing.bjtu.edu.cn/space-uid-421604.html
https://zhixing.bjtu.edu.cn/space-uid-421605.html
https://zhixing.bjtu.edu.cn/space-uid-421606.html
https://zhixing.bjtu.edu.cn/space-uid-421607.html
https://zhixing.bjtu.edu.cn/space-uid-421608.html
https://zhixing.bjtu.edu.cn/space-uid-421609.html
https://zhixing.bjtu.edu.cn/space-uid-421610.html
https://zhixing.bjtu.edu.cn/space-uid-421611.html
https://zhixing.bjtu.edu.cn/space-uid-421612.html
https://zhixing.bjtu.edu.cn/space-uid-421613.html
https://zhixing.bjtu.edu.cn/space-uid-421614.html
https://zhixing.bjtu.edu.cn/space-uid-421615.html
https://zhixing.bjtu.edu.cn/space-uid-421616.html
https://zhixing.bjtu.edu.cn/space-uid-421617.html
https://zhixing.bjtu.edu.cn/space-uid-421618.html
https://zhixing.bjtu.edu.cn/space-uid-421619.html
https://zhixing.bjtu.edu.cn/space-uid-421620.html
https://zhixing.bjtu.edu.cn/space-uid-421621.html
https://zhixing.bjtu.edu.cn/space-uid-421622.html
https://zhixing.bjtu.edu.cn/space-uid-421623.html
https://zhixing.bjtu.edu.cn/space-uid-421624.html
https://zhixing.bjtu.edu.cn/space-uid-421625.html
https://zhixing.bjtu.edu.cn/space-uid-421626.html
https://zhixing.bjtu.edu.cn/space-uid-421627.html
https://zhixing.bjtu.edu.cn/space-uid-421628.html
https://zhixing.bjtu.edu.cn/space-uid-421629.html
https://zhixing.bjtu.edu.cn/space-uid-421630.html
https://zhixing.bjtu.edu.cn/space-uid-421631.html
https://zhixing.bjtu.edu.cn/space-uid-421632.html
https://zhixing.bjtu.edu.cn/space-uid-421633.html
https://zhixing.bjtu.edu.cn/space-uid-421634.html
https://zhixing.bjtu.edu.cn/space-uid-421635.html
https://zhixing.bjtu.edu.cn/space-uid-421636.html
https://zhixing.bjtu.edu.cn/space-uid-421637.html
https://zhixing.bjtu.edu.cn/space-uid-421638.html
https://zhixing.bjtu.edu.cn/space-uid-421639.html
https://zhixing.bjtu.edu.cn/space-uid-421640.html
https://zhixing.bjtu.edu.cn/space-uid-421641.html
https://zhixing.bjtu.edu.cn/space-uid-421642.html
https://zhixing.bjtu.edu.cn/space-uid-421643.html
https://zhixing.bjtu.edu.cn/space-uid-421644.html
https://zhixing.bjtu.edu.cn/space-uid-421645.html
https://zhixing.bjtu.edu.cn/space-uid-421646.html
https://zhixing.bjtu.edu.cn/space-uid-421647.html
https://zhixing.bjtu.edu.cn/space-uid-421648.html
https://zhixing.bjtu.edu.cn/space-uid-421649.html
https://zhixing.bjtu.edu.cn/space-uid-421650.html
https://zhixing.bjtu.edu.cn/space-uid-421651.html
https://zhixing.bjtu.edu.cn/space-uid-421652.html
https://zhixing.bjtu.edu.cn/space-uid-421653.html
https://zhixing.bjtu.edu.cn/space-uid-421654.html
https://zhixing.bjtu.edu.cn/space-uid-421655.html
https://zhixing.bjtu.edu.cn/space-uid-421656.html
https://zhixing.bjtu.edu.cn/space-uid-421657.html
https://zhixing.bjtu.edu.cn/space-uid-421658.html
https://zhixing.bjtu.edu.cn/space-uid-421659.html
https://zhixing.bjtu.edu.cn/space-uid-421660.html
https://zhixing.bjtu.edu.cn/space-uid-421661.html
https://zhixing.bjtu.edu.cn/space-uid-421662.html
https://zhixing.bjtu.edu.cn/space-uid-421663.html
https://zhixing.bjtu.edu.cn/space-uid-421664.html
https://zhixing.bjtu.edu.cn/space-uid-421665.html
https://zhixing.bjtu.edu.cn/space-uid-421666.html
https://zhixing.bjtu.edu.cn/space-uid-421667.html
https://zhixing.bjtu.edu.cn/space-uid-421668.html
https://zhixing.bjtu.edu.cn/space-uid-421669.html
https://zhixing.bjtu.edu.cn/space-uid-421670.html
https://zhixing.bjtu.edu.cn/space-uid-421671.html
https://zhixing.bjtu.edu.cn/space-uid-421672.html
https://zhixing.bjtu.edu.cn/space-uid-421673.html
https://zhixing.bjtu.edu.cn/space-uid-421674.html
https://zhixing.bjtu.edu.cn/space-uid-421675.html
https://zhixing.bjtu.edu.cn/space-uid-421676.html
https://zhixing.bjtu.edu.cn/space-uid-421677.html
https://zhixing.bjtu.edu.cn/space-uid-421678.html
https://zhixing.bjtu.edu.cn/space-uid-421679.html
https://zhixing.bjtu.edu.cn/space-uid-421680.html
https://zhixing.bjtu.edu.cn/space-uid-421681.html
https://zhixing.bjtu.edu.cn/space-uid-421682.html
https://zhixing.bjtu.edu.cn/space-uid-421683.html
https://zhixing.bjtu.edu.cn/space-uid-421684.html
https://zhixing.bjtu.edu.cn/space-uid-421685.html
https://zhixing.bjtu.edu.cn/space-uid-421686.html
https://zhixing.bjtu.edu.cn/space-uid-421687.html
https://zhixing.bjtu.edu.cn/space-uid-421688.html
https://zhixing.bjtu.edu.cn/space-uid-421689.html
https://zhixing.bjtu.edu.cn/space-uid-421690.html
https://zhixing.bjtu.edu.cn/space-uid-421691.html
https://zhixing.bjtu.edu.cn/space-uid-421692.html
https://zhixing.bjtu.edu.cn/space-uid-421693.html
https://zhixing.bjtu.edu.cn/space-uid-421694.html
https://zhixing.bjtu.edu.cn/space-uid-421695.html
https://zhixing.bjtu.edu.cn/space-uid-421696.html
https://zhixing.bjtu.edu.cn/space-uid-421697.html
https://zhixing.bjtu.edu.cn/space-uid-421698.html
https://zhixing.bjtu.edu.cn/space-uid-421699.html
https://zhixing.bjtu.edu.cn/space-uid-421700.html
https://zhixing.bjtu.edu.cn/space-uid-421701.html
https://zhixing.bjtu.edu.cn/space-uid-421702.html
https://zhixing.bjtu.edu.cn/space-uid-421703.html
https://zhixing.bjtu.edu.cn/space-uid-421704.html
https://zhixing.bjtu.edu.cn/space-uid-421705.html
https://zhixing.bjtu.edu.cn/space-uid-421706.html
https://zhixing.bjtu.edu.cn/space-uid-421707.html
https://zhixing.bjtu.edu.cn/space-uid-421708.html
https://zhixing.bjtu.edu.cn/space-uid-421709.html
https://zhixing.bjtu.edu.cn/space-uid-421710.html
https://zhixing.bjtu.edu.cn/space-uid-421711.html
https://zhixing.bjtu.edu.cn/space-uid-421712.html
https://zhixing.bjtu.edu.cn/space-uid-421713.html
https://zhixing.bjtu.edu.cn/space-uid-421714.html
https://zhixing.bjtu.edu.cn/space-uid-421715.html
https://zhixing.bjtu.edu.cn/space-uid-421716.html
https://zhixing.bjtu.edu.cn/space-uid-421717.html
https://zhixing.bjtu.edu.cn/space-uid-421718.html
https://zhixing.bjtu.edu.cn/space-uid-421719.html
https://zhixing.bjtu.edu.cn/space-uid-421720.html
https://zhixing.bjtu.edu.cn/space-uid-421721.html
https://zhixing.bjtu.edu.cn/space-uid-421722.html
https://zhixing.bjtu.edu.cn/space-uid-421723.html
https://zhixing.bjtu.edu.cn/space-uid-421724.html
https://zhixing.bjtu.edu.cn/space-uid-421725.html
https://zhixing.bjtu.edu.cn/space-uid-421726.html
https://zhixing.bjtu.edu.cn/space-uid-421727.html
https://zhixing.bjtu.edu.cn/space-uid-421728.html
https://zhixing.bjtu.edu.cn/space-uid-421729.html
https://zhixing.bjtu.edu.cn/space-uid-421730.html
https://zhixing.bjtu.edu.cn/space-uid-421731.html
https://zhixing.bjtu.edu.cn/space-uid-421732.html
https://zhixing.bjtu.edu.cn/space-uid-421733.html
https://zhixing.bjtu.edu.cn/space-uid-421734.html
https://zhixing.bjtu.edu.cn/space-uid-421735.html
https://zhixing.bjtu.edu.cn/space-uid-421736.html
https://zhixing.bjtu.edu.cn/space-uid-421737.html
https://zhixing.bjtu.edu.cn/space-uid-421738.html
https://zhixing.bjtu.edu.cn/space-uid-421739.html
https://zhixing.bjtu.edu.cn/space-uid-421740.html
https://zhixing.bjtu.edu.cn/space-uid-421741.html
https://zhixing.bjtu.edu.cn/space-uid-421742.html
https://zhixing.bjtu.edu.cn/space-uid-421743.html
https://zhixing.bjtu.edu.cn/space-uid-421744.html
https://zhixing.bjtu.edu.cn/space-uid-421745.html
https://zhixing.bjtu.edu.cn/space-uid-421746.html
https://zhixing.bjtu.edu.cn/space-uid-421747.html
https://zhixing.bjtu.edu.cn/space-uid-421748.html
https://zhixing.bjtu.edu.cn/space-uid-421749.html
https://zhixing.bjtu.edu.cn/space-uid-421750.html
https://zhixing.bjtu.edu.cn/space-uid-421751.html
https://zhixing.bjtu.edu.cn/space-uid-421752.html
https://zhixing.bjtu.edu.cn/space-uid-421753.html
https://zhixing.bjtu.edu.cn/space-uid-421754.html
https://zhixing.bjtu.edu.cn/space-uid-421755.html
https://zhixing.bjtu.edu.cn/space-uid-421756.html
https://zhixing.bjtu.edu.cn/space-uid-421757.html
https://zhixing.bjtu.edu.cn/space-uid-421758.html
https://zhixing.bjtu.edu.cn/space-uid-421759.html
https://zhixing.bjtu.edu.cn/space-uid-421760.html
https://zhixing.bjtu.edu.cn/space-uid-421761.html
https://zhixing.bjtu.edu.cn/space-uid-421762.html
https://zhixing.bjtu.edu.cn/space-uid-421763.html
 

blog = Blog.objects.using(db_alias).get(id=1)

Blog.objects.using(db_alias).filter(id=1).delete()

# 下面的是新建的保存操作:
obj.save(using=db_alias)

以上就是本篇笔记的全部内容,下一篇将介绍如何使用 model 的条件表达式的搜索,更新等操作。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值