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

SQLAlchemy - तालिकाओं की सूची प्राप्त करना

सभी तालिकाएँ tables . में एकत्रित की जाती हैं SQLAlchemy मेटाडेटा ऑब्जेक्ट की विशेषता। उन तालिकाओं के नामों की सूची प्राप्त करने के लिए:

>>> metadata.tables.keys()
['posts', 'comments', 'users']

यदि आप घोषणात्मक एक्सटेंशन का उपयोग कर रहे हैं, तो संभवतः आप स्वयं मेटाडेटा का प्रबंधन नहीं कर रहे हैं। सौभाग्य से, मेटाडेटा अभी भी बेसक्लास पर मौजूद है,

>>> Base = sqlalchemy.ext.declarative.declarative_base()
>>> Base.metadata
MetaData(None)

यदि आप यह पता लगाने की कोशिश कर रहे हैं कि आपके डेटाबेस में कौन सी तालिकाएँ मौजूद हैं, यहाँ तक कि उनमें से भी जिनके बारे में आपने SQLAlchemy को अभी तक नहीं बताया है, तो आप तालिका प्रतिबिंब का उपयोग कर सकते हैं। SQLAlchemy तब डेटाबेस का निरीक्षण करेगा और सभी अनुपलब्ध तालिकाओं के साथ मेटाडेटा को अपडेट करेगा।

>>> metadata.reflect(engine)

Postgres के लिए, यदि आपके पास एकाधिक स्कीमा हैं, तो आपको इंजन में सभी स्कीमाओं को लूप करना होगा:

from sqlalchemy import inspect
inspector = inspect(engine)
schemas = inspector.get_schema_names()

for schema in schemas:
    print("schema: %s" % schema)
    for table_name in inspector.get_table_names(schema=schema):
        for column in inspector.get_columns(table_name, schema=schema):
            print("Column: %s" % column)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्वेरी के माध्यम से MySQL में डेटाबेस संरचना कैसे प्राप्त करें

  2. क्या हमारे पास MySQL में विकल्प के रूप में टेबल का नाम हो सकता है?

  3. MySQL के साथ PHP में PDO का उपयोग करने वाले कुछ प्रकार के तैयार प्रश्न धीमे क्यों हैं?

  4. MySQL में AUTO_INCREMENT को कैसे पढ़ें और रीसेट करें

  5. क्या MySQL में डालने से पहले htmlspecialchars() का उपयोग करना अच्छा है?