2024-09-29 21:36:41 发布
网友
大家好,我正在django开发一个web应用程序,我使用的是postgresql数据库。我还必须能够从另一个使用sqlserver数据库的应用程序中获取一些数据。我试图得到的表有很多数据,所以使用直接链接可能是不明智的。对于这个问题,哪种方法是最好的?我可以使用sqlodbc连接来获取数据吗?也可以怎样填充表,比如我创建一个本地表并将数据从sql迁移到postgresql计划。想了解一下你是如何处理这个问题的,以及你的经历。谢谢您!在
在你的设置.py编辑此代码(对于多个数据库)
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'django', 'USER': 'postgres', 'PASSWORD': '12345678', 'HOST': 'localhost', 'PORT': '5432', }, 'connection_other_db': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mi_db', 'USER': 'root', 'PASSWORD': 'root', 'HOST': 'localhost', 'PORT': '3306', } }
应用迁移命令:
对于默认数据库
对于其他数据库(连接其他数据库)
在您看来,要使用ORM,请使用以下命令:
Mi_Model.objects.using('connection_other_db').all() # For mysql database Mi_Model.objects.all() # For default database (postgresql)
对于创建对象:
s = Mi_Model() s._state.adding = False s._state.db = 'connection_other_db' s.field_1 = 'A value' s.save()
或
s = Mi_Model.objects.using('connection_other_db').create( field_1='A value' # .... )
待用交易:
with transaction.atomic(using='connection_other_db'): # Your code here
使用光标
with connections['connection_other_db'].cursor() as cursor: cursor.execute('your query')
Django文档: https://docs.djangoproject.com/es/2.1/topics/db/multi-db/
在你的设置.py编辑此代码(对于多个数据库)
应用迁移命令:
对于默认数据库
^{pr2}$对于其他数据库(连接其他数据库)
^{3}$在您看来,要使用ORM,请使用以下命令:
对于创建对象:
或
待用交易:
使用光标
Django文档: https://docs.djangoproject.com/es/2.1/topics/db/multi-db/
相关问题 更多 >
编程相关推荐