簡體   English   中英

如何訪問 Django 中的遠程數據庫表?

[英]How to access remote database's tables in Django?

我正在訪問我的 Django 項目中的遠程數據庫,如下所示:

設置.py

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.sqlite3',
    'NAME': BASE_DIR / 'db.sqlite3',
},
'remote_db' : {
    'ENGINE': 'django.db.backends.sqlite3',
    'NAME': 'db_name',
    'USER': 'db_user',
    'PASSWORD': 'db_password',
    'HOST': '192.*.*.*',
    'PORT': '1433',

}

}

為了訪問默認數據庫表的數據,我使用以下語法:

from app_name.models import mymodel

mymodel.objects.all()

我的遠程數據庫已經有報告、emplayee_data 等表,而我的項目沒有為這些表定義模型。 我需要訪問這些表,但我不確定如何執行此操作。

remote_db.reports.all()

總而言之,我的主要目標是將數據從remote_db復制到默認數據庫。

注意:remote_db 每天都會獲取新數據。

我認為您還需要在該項目中定義報告和employee_data 的模型。

然后你可以像下面這樣使用它們:

reports.objects.using('remote_db').all()

您提到沒有為表定義模型。 我認為制作一個腳本來從remote_db獲取數據並將其添加到default將是一個不錯的選擇。 如果您不為這些表創建模型,則必須使用原始 SQL 來執行此操作。 另一種選擇是獲取remote_db轉儲並將其導入默認數據庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM