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

Psycopg2 में एक पैरामीटर के रूप में टेबल का नाम पास करना

आधिकारिक दस्तावेज के अनुसार:

<ब्लॉकक्वॉट>

यदि आपको गतिशील रूप से एक SQL क्वेरी उत्पन्न करने की आवश्यकता है (उदाहरण के लिए गतिशील रूप से तालिका का नाम चुनना ) आप psycopg2.sql मॉड्यूल द्वारा प्रदान की गई सुविधाओं का उपयोग कर सकते हैं।

sql मॉड्यूल psycopg2 संस्करण 2.7 में नया है। इसमें निम्नलिखित सिंटैक्स है:

from psycopg2 import sql

cur.execute(
    sql.SQL("insert into {} values (%s, %s)")
        .format(sql.Identifier('my_table')),
    [10, 20])

और अधिक:http://initd.org/psycopg/docs/sql.html#module-psycopg2.sql

[अद्यतन 2017-03-24:AsIs तालिका या फ़ील्ड नामों का प्रतिनिधित्व करने के लिए उपयोग नहीं किया जाना चाहिए, नया sql इसके बजाय मॉड्यूल का उपयोग किया जाना चाहिए:https://stackoverflow.com/a/42980069/5285608 ]

इसके अलावा, psycopg2 दस्तावेज़ीकरण के अनुसार:

<ब्लॉकक्वॉट>

चेतावनी :कभी नहीं, कभी नहीं , कभी नहीं पायथन स्ट्रिंग कॉन्सटेनेशन का उपयोग करें (+ ) या स्ट्रिंग पैरामीटर इंटरपोलेशन (% ) SQL क्वेरी स्ट्रिंग में चर पास करने के लिए। बंदूक की नोक पर भी नहीं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL में किसी फ़ंक्शन के अंदर किसी चयन का परिणाम कैसे वापस करें?

  2. मौजूदा PostgreSQL डेटाबेस पर TimescaleDB को कैसे सक्षम करें

  3. PostgreSQL में "त्रुटि:प्रत्येक INTERSECT क्वेरी में समान संख्या में कॉलम होने चाहिए" को ठीक करें

  4. डिलीट कॉलम मौजूद नहीं है

  5. PostgreSQL विंडो फ़ंक्शन:तुलना द्वारा विभाजन