當你開發乙個系統時,需要有多個資料庫,但這個資料庫已經有了,建新表還得把資料導來導去得很麻煩,這時候就用到了多個資料庫得繫結了
由於資料庫密碼等資訊為敏感資訊,最好做脫敏處理
# config.py
sqlalchemy_database_uri =
'mysql://root:123456@localhost:3306/teacher'
# 預設資料庫(主資料庫)
# 需要繫結的多個資料庫
sqlalchemy_binds =
# main.py
from flask import flask
from flask_sqlalchemy import sqlalchemy
from config import sqlalchemy_database_uri, sqlalchemy_binds
'sqlalchemy_database_uri'
]= defaultconfig.sqlalchemy_database_uri
'sqlalchemy_binds'
]= defaultconfig.sqlalchemy_binds
class
teacher
(db.model)
:# 使用預設資料庫,不需要像下面指定__bind_key__
__tablename__ =
'tablename1'
# 表名
id= db.column(db.integer, primary_key=
true
) name = db.column(db.string(16)
) cardnumber = db.column(db.string(30)
)class
students
(db.model)
: __bind_key__ =
'students'
# 已設定__bind_key__ 資料庫名
__tablename__ =
'tablename2'
# 表名
id= db.column(db.integer, primary_key=
true
) name = db.column(db.string(16)
) cardnumber = db.column(db.string(30)
)
然後檢視函式中得用法和單個資料庫的相同
之前做專案的時候一直不知道flask的mvc模式怎麼寫,最終經過自己的摸索找到了方法,現已經將框架的模板上傳到了github,歡迎取食(前端採用的是nuxt)github位址
Redis多個資料庫
注意 redis支援多個資料庫,並且每個資料庫的資料是隔離的不能共享,並且基於單機才有,如果是集群就沒有資料庫的概念。redis是乙個字典結構的儲存伺服器,而實際上乙個redis例項提供了多個用來儲存資料的字典,客戶端可以指定將資料儲存在哪個字典中。這與我們熟知的在乙個關聯式資料庫例項中可以建立多個...
Redis多個資料庫
注意 redis支援多個資料庫,並且每個資料庫的資料是隔離的不能共享,並且基於單機才有,如果是集群就沒有資料庫的概念。redis是乙個字典結構的儲存伺服器,而實際上乙個redis例項提供了多個用來儲存資料的字典,客戶端可以指定將資料儲存在哪個字典中。這與我們熟知的在乙個關聯式資料庫例項中可以建立多個...
hibernate配置多個資料庫
我的問題是 我做了乙個平台,這個平台的多個客戶要使用一台伺服器。我用的資料庫是oracle,這樣的話,我想讓hibernate 配置上多個資料庫連線,而這些資料庫是相同表名,只是庫名不同。我查了其他說法 方案一 寫兩個hibernate.cfg.xml 使用資料庫a的時候 configuration...