[英]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.