PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Với sqlalchemy cách liên kết động với công cụ cơ sở dữ liệu trên cơ sở mỗi yêu cầu

Ràng buộc các đối tượng toàn cầu (trình ánh xạ, siêu dữ liệu) với kết nối dành riêng cho người dùng không phải là cách tốt. Cũng như sử dụng phiên phạm vi. Tôi khuyên bạn nên tạo phiên mới cho mỗi yêu cầu và định cấu hình nó để sử dụng các kết nối dành riêng cho người dùng. Mẫu sau giả định rằng bạn sử dụng các đối tượng siêu dữ liệu riêng biệt cho từng cơ sở dữ liệu:

binds = {}

finance_engine = create_engine(url1)
binds.update(dict.fromkeys(finance_metadata.sorted_tables, finance_engine))
# The following line is required when mappings to joint tables are used (e.g.
# in joint table inheritance) due to bug (or misfeature) in SQLAlchemy 0.5.4.
# This issue might be fixed in newer versions.
binds.update(dict.fromkeys([Employee, Customer, Invoice], finance_engine))

staff_engine = create_engine(url2)
binds.update(dict.fromkeys(staff_metadata.sorted_tables, staff_engine))
# See comment above.
binds.update(dict.fromkeys([Project, Hour], staff_engine))

session = sessionmaker(binds=binds)()


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kiểu dữ liệu của Postgres NUMERIC có thể lưu trữ các giá trị đã ký không?

  2. Giám sát phân phối Percona cho PostgreSQL - Các chỉ số chính

  3. Các tùy chọn khôi phục thảm họa cho PostgreSQL được triển khai cho một đám mây lai

  4. Tại sao việc lặp lại một QuerySet Django lớn lại tiêu tốn một lượng lớn bộ nhớ?

  5. Làm cách nào để bỏ tất cả các bảng trong cơ sở dữ liệu PostgreSQL?