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

पैरामीटर के रूप में पूर्णांक सरणियों को पोस्टग्रेज करता है?

देखें:http://www.postgresql.org/docs/9.1/static/arrays.html

यदि आपका गैर-देशी ड्राइवर अभी भी आपको सरणियों को पारित करने की अनुमति नहीं देता है, तो आप यह कर सकते हैं:

  • एक सरणी का एक स्ट्रिंग प्रतिनिधित्व पास करें (जिसे आपकी संग्रहीत प्रक्रिया तब एक सरणी में पार्स कर सकती है - देखें string_to_array )

    CREATE FUNCTION my_method(TEXT) RETURNS VOID AS $$ 
    DECLARE
           ids INT[];
    BEGIN
           ids = string_to_array($1,',');
           ...
    END $$ LANGUAGE plpgsql;
    

    तब

    SELECT my_method(:1)
    

    साथ :1 ='1,2,3,4'

  • एक स्ट्रिंग से एक सरणी में डालने के लिए पोस्टग्रेज़ पर ही भरोसा करें

    CREATE FUNCTION my_method(INT[]) RETURNS VOID AS $$ 
           ...
    END $$ LANGUAGE plpgsql;
    

    तब

    SELECT my_method('{1,2,3,4}')
    
  • बाइंड वेरिएबल्स का उपयोग न करने का चयन करें और इसके बजाय सभी मापदंडों के साथ एक स्पष्ट कमांड स्ट्रिंग जारी करें (एसक्यूएल इंजेक्शन हमलों से बचने के लिए बाहर से आने वाले सभी मापदंडों को मान्य करना या बचाना सुनिश्चित करें।)

    CREATE FUNCTION my_method(INT[]) RETURNS VOID AS $$ 
           ...
    END $$ LANGUAGE plpgsql;
    

    तब

    SELECT my_method(ARRAY [1,2,3,4])
    


  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 में उच्च उपलब्धता का प्रबंधन - भाग III:Patroni

  2. PostgreSQL में टेबल को अनपिवट कैसे करें

  3. पोस्टग्रेज़ का उपयोग करके तालिका में दूसरे या तीसरे कॉलम के बाद तालिका में एक नया कॉलम कैसे जोड़ें?

  4. जब एसएसएल समर्थन विदेशी डेटा रैपर का उपयोग करके संकलित नहीं किया जाता है तो एसएसएलमोड मान को पोस्टग्रेज करना अमान्य है

  5. PhpPgAdmin से sql इंसर्ट क्वेरी सिंटैक्स त्रुटि पोस्टग्रेज करता है