Django ORM:如何查询处于只读模式且在中没有引用的辅助数据库型号.py金融机构

2024-04-20 14:22:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我想查询辅助数据库,基本上是一个生产数据库。目前我正在使用直接查询,但想使用ORM。你知道吗

我的电流型号.py文件如下所示。这里用户提供了表名。为了简单起见,考虑表是“服务器列表”。你知道吗

from django.db import connections

# Create your models here.
def my_custom_sql(TABLE):
    with connections["my_oracle"].cursor() as cursor:
        cursor.execute("select * from {0} where server = 'XYZ';".format(TABLE))
        row = cursor.fetchall()

        return row

数据库条目:setttings.py地址:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': 'mydatabase',
    },
    'my_oracle': {
        'ENGINE': 'django.db.backends.oracle',
        'NAME': 'xyz:1234/ABCDB',
        'USER': 'ABC',
        'PASSWORD': '1234'
    },
}

我想使用Django ORM运行相同的查询。有人能帮助我们如何连接到辅助数据库并创建型号.py此数据库的文件。我指的是这个link,但它是导入的型号.py文件,我认为这是不可能在我的情况下,因为数据库已经存在,在只读模式。你知道吗


Tags: 文件djangofrompy数据库dbmyorm
1条回答
网友
1楼 · 发布于 2024-04-20 14:22:08

settings.py文件中的DATABASES变量应如下所示:

DATABASES = {
    'default': DEFAULT_DB_CONFIG,
    'slave': SLAVE_DB_CONFIG,
}

当您使用ORM并希望查询表时,您可以使用using接口,如下所示:

SampleModel.objects.using('slave').all()

检查文档:https://docs.djangoproject.com/en/3.0/topics/db/multi-db/

相关问题 更多 >