mysql - django多数据连用

查看:92
本文介绍了mysql - django多数据连用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

ps:括号内是注释,以免答题者不理解在下的意思,可以不看。
核心内容是我在django中操作数据库非要和django那样子使用model.sql_name.objects 来操作吗?不能使用cursor.execute('')吗?
应为有的时候后者反而能更清楚的传达我的意愿。
正文:
请问django使用sqlite3的同时部分数据想要保存在远程服务器的mysql中,是应该按照网上的做法,在project_name文件夹中存放 database_router.py(详见自强学院的多数据库连用教程)吗?

我有一个大胆的想法就是,写一个库,然后用到的时候调用难道不也可以吗。。这两者有什么区别呢?(一种是按照django中的model 方式调用,一种是直接写好调用方法在py文件中,然后import这个文件在对数据库进行操作)

解决方案

  1. 能不能使用 cursor.execute?可以的。

from django.db import connection

with connection.cursor() as cursor:
    cursor.execute("UPDATE bar SET foo = 1 WHERE baz = %s", [self.baz])
    cursor.execute("SELECT foo FROM bar WHERE baz = %s", [self.baz])
    row = cursor.fetchone()

  1. 怎样操作多个数据库
    感觉 lejoy 说的那种方法不错的。

你也可以自己封装(写个库啥的)。但是,django 都已经封装好了,就没必要自己造轮子了。

这篇关于mysql - django多数据连用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆