PL / pgSQL è il linguaggio procedurale predefinito per il sistema di database PostgreSQL. Le domande su PL / pgSQL dovrebbero probabilmente essere taggate anche "PostgreSQL".
Sto lavorando a una funzione che mi consente di aggiungere un indice se non esiste. Sto incontrando il problema che non riesco a ottenere un elenco di indici con cui confrontare. qualche idea? Questo è un problema simile a quello della creazione della colonna che è stato risolto con questo …
Provenendo da un background MySQL, in cui le prestazioni della procedura memorizzata (articolo precedente) e l' usabilità sono discutibili, sto valutando PostgreSQL per un nuovo prodotto per la mia azienda. Una delle cose che vorrei fare è spostare parte della logica dell'applicazione in stored procedure, quindi sto qui chiedendo DO …
Ho letto di diverse UPSERTimplementazioni in PostgreSQL, ma tutte queste soluzioni sono relativamente vecchie o relativamente esotiche (usando CTE scrivibile ad esempio ). E non sono affatto un esperto di psql per scoprire immediatamente se queste soluzioni sono vecchie perché sono ben raccomandate o sono (beh, quasi tutte sono) solo …
Questa domanda non riguarda bytea v. Oid v. Blobs v. Oggetti di grandi dimensioni, ecc. Ho una tabella contenente un integercampo chiave primaria e un byteacampo. Vorrei inserire i dati nel byteacampo. Questo, presumibilmente, può essere fatto da una delle PL/lingue, e potrei cercare di farlo PL/Pythonin futuro. Dato che …
Quindi un commento da questa domanda menziona che c'è una leggera differenza in "Stored procedure" e "Stored Funtions" in PostgreSQL. Il commento si collega a un articolo di Wikipedia ma alcuni di questi non sembrano applicarsi (ad esempio, possono essere utilizzati in una SELECTdichiarazione). La stessa sintassi sembra essere un …
In Postgres, le query preparate e le funzioni definite dall'utente equivalgono a un meccanismo di protezione contro l'iniezione SQL ? Ci sono vantaggi particolari in un approccio rispetto all'altro?
Devo assegnare valori a 2 variabili come sotto nella funzione Postgres. a := select col1 from tbl where ... b := select col2 from tbl where ... Come posso assegnare 2 valori a 2 variabili in un comando di una riga? Piace a,b := select col1,col2 from tbl where ...
Ho un sistema in cui non riesco a controllare la progettazione di alcune tabelle (replicate tramite Slony-I), e quindi ho una serie di quelli che chiamiamo "tabelle d'ombra", dove estraggo alcune informazioni dalle tabelle replicate e archiviarlo nella forma elaborata di cui ho bisogno, eliminando i record che voglio ignorare. …
Qualcuno può riassumere le differenze tra: http://www.postgresql.org/docs/9.1/static/xfunc-sql.html e http://www.postgresql.org/docs/9.1/static/plpgsql.html ? Punti principali: differenze concettuali data una famiglia problematica, praticità d'uso problemi politici
E 'possibile quando si utilizza il pgadmino plsqlper ottenere una sospensione di un piano di query per un'istruzione SQL eseguita all'interno di un u ser d efined f unzione (UDF) utilizzando EXPLAIN. Quindi, come posso ottenere il piano di query per una particolare chiamata di un UDF? Vedo l'UDF sottratto …
Sto usando una funzione PL / pgSQL in PostgreSQL 9.3 con diverse query complesse all'interno: create function f1() returns integer as $$ declare event tablename%ROWTYPE; .... .... begin FOR event IN SELECT * FROM tablename WHERE condition LOOP EXECUTE 'SELECT f2(event.columnname)' INTO dummy_return; END LOOP; ... INSERT INTO ... FROM …
Ho una piccola tabella (~ 10 righe) chiamata restrictionsnel mio database PostgreSQL, in cui i valori vengono eliminati e inseriti su base giornaliera. Vorrei avere una tabella chiamata restrictions_deleted, in cui ogni riga eliminata restrictionsverrà memorizzata automaticamente. Poiché restrictionsha un ID seriale, non ci saranno duplicati. Come scrivo un tale …
Data questa configurazione nell'attuale Postgres 9.4 ( da questa domanda correlata ): CREATE TABLE foo (ts, foo) AS VALUES (1, 'A') -- int, text , (7, 'B'); CREATE TABLE bar (ts, bar) AS VALUES (3, 'C') , (5, 'D') , (9, 'E'); C'è anche un violino SQL dalla domanda precedente. …
Attualmente sto sperimentando un po 'con PL / pgSQL e voglio sapere se esiste un modo più elegante per fare qualcosa del genere: select c.data into data from doc c where c.doc_id = id and c.group_cur > group_cur order by c.id desc limit 1; EXCEPTION WHEN NO_DATA_FOUND THEN select c.data …
Sto cercando di restituire più record utilizzando il tipo di dati RECORD, esiste un modo per aggiungere a RECORD e aggiungere / aggiungere un nuovo valore con ogni iterazione a questo RECORD. cioè, voglio aggiungere in recmodo che recdiventi un insieme di righe quando il ciclo è finito, che posso …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.