PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

एकाधिक स्कीमा में एलेम्बिक अपग्रेड करें

हमने जो किया वह निष्पादित होने से पहले प्रश्नों को पकड़ने के लिए sqlalchemy के ईवेंट तंत्र का उपयोग करना था और स्कीमा को बदलने के लिए एक उपसर्ग जोड़ना था:

def before_cursor_execute(conn, cursor, statement, parameters, context, executemany):
    schema_name = <Logic to resolve schema name>
    statement = "SET search_path TO '%s'; %s" % (schema_name, statement)
    return statement, parameters
    ......
    (later in the code)
    listen(Engine, 'before_cursor_execute', before_cursor_execute, retval=True)

इस तरह, हम एलेम्बिक के माइग्रेट को कई बार चला सकते हैं, यह सुनिश्चित करते हुए कि प्रत्येक बार स्कीमा_नाम सही ढंग से हल किया गया है, और सब कुछ सुचारू रूप से काम करता है




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CSV डेटा के साथ वेरिएबल से कॉपी पोस्ट करता है

  2. क्या मैं पहले से किए गए लेन-देन को रोलबैक कर सकता हूं? (डेटा हानि)

  3. क्वेरी से शुरुआती मूल्य का उपयोग करके अनुक्रम कैसे बनाएं?

  4. PostgreSQL और JDBC के साथ ClassNotFoundException

  5. jOOQ में खाली सरणी के लिए jsonArrayAgg को जोड़ता है