PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Array integer Postgres sebagai parameter?

Lihat:http://www.postgresql.org/docs/9.1/static/arrays.html

Jika driver non-asli Anda masih tidak mengizinkan Anda meneruskan array, Anda dapat:

  • meneruskan representasi string dari sebuah array (yang kemudian dapat diurai oleh prosedur tersimpan Anda menjadi sebuah array -- lihat string_to_array )

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

    lalu

    SELECT my_method(:1)
    

    dengan :1 ='1,2,3,4'

  • mengandalkan Postgres sendiri untuk melakukan cast dari string ke array

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

    lalu

    SELECT my_method('{1,2,3,4}')
    
  • memilih untuk tidak menggunakan variabel bind dan mengeluarkan string perintah eksplisit dengan semua parameter yang dijabarkan sebagai gantinya (pastikan untuk memvalidasi atau menghindari semua parameter yang datang dari luar untuk menghindari serangan injeksi SQL.)

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

    lalu

    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. Bagaimana cara membuat profil Database PostgreSQL?

  2. PostgreSQL:cara menginstal ekstensi plpythonu

  3. Cara mengatur batas waktu koneksi di SQLAlchemy

  4. Penyelaman Cloud Vendor:PostgreSQL di Microsoft Azure

  5. Masukkan Data Ke Tabel yang Ditautkan oleh Kunci Asing