Als «plpgsql» getaggte Fragen

PL / pgSQL ist die Standardprozedursprache für das PostgreSQL-Datenbanksystem. Fragen zu PL / pgSQL sollten wahrscheinlich auch mit "PostgreSQL" gekennzeichnet sein.

3
Was passiert, wenn zwei Prozesse gleichzeitig versuchen, MATERIALISIERTE ANSICHT KONZURRENT ZU ERNEUERN?
Laut den Dokumenten: KONZURRENT Aktualisieren Sie die materialisierte Ansicht, ohne gleichzeitige Auswahlen in der materialisierten Ansicht zu sperren. (...) ... ANDERE INHALTE ... Selbst mit dieser Option kann jeweils nur ein REFRESH gegen eine materialisierte Ansicht ausgeführt werden . Ich hatte eine Funktion, die die letzte Aktualisierungszeit für eine MATERIALISIERTE …


3
Overhead für prozedurale PostgreSQL-Sprachen (plpython / plsql / pllua…)
Ich versuche, Informationen über benutzerdefinierte PostgreSQL- Funktionen in der Leistung von prozeduralen Sprachen für Echtzeitaufgaben zu finden. Wie vergleichen sie sich mit eingebauten Funktionen? Gibt es einen Unterschied (im Overhead), wie Postgres die Funktionen plpython vs plpgsql vs pllua aufruft / verwaltet (ich interessiere mich für die Seite Postgres-Integration / …

2
Wie erhalte ich einen Ausnahmekontext für eine manuell ausgelöste Ausnahme in PL / pgSQL?
In Postgres erhalten wir die "Stapelverfolgung" von Ausnahmen unter Verwendung dieses Codes: EXCEPTION WHEN others THEN GET STACKED DIAGNOSTICS v_error_stack = PG_EXCEPTION_CONTEXT; Dies funktioniert gut für "natürliche" Ausnahmen, aber wenn wir eine Ausnahme mit auslösen RAISE EXCEPTION 'This is an error!'; ... dann gibt es keine Stack-Trace. Laut einem Eintrag …

1
Fehler: set_valued-Funktion, die im Kontext aufgerufen wird und keine Menge akzeptieren kann. Worum geht es?
Ich benutze Postgresql 9.1 mit Ubuntu 12.04. Inspiriert von Craig Antwort auf meine Frage Verkettung von SETOF Typ oder SETOF Rekord Ich dachte , ich würde gut gehen mit der Verwendung return query, setof recordund eine Reihe Generator in diese plpgsql Funktion: create or replace function compute_all_pair_by_craig(id_obj bigint) returns setof …

2
Geben Sie einen Datensatz mit der PL / pgSQL-Funktion zurück, um die Abfrage zu beschleunigen
Ich habe einen nicht perkenden Spieledämon in Perl geschrieben , der Acync-Abfragen verwendet, um Spielerstatistiken in eine PostgreSQL 9.3-Datenbank zu schreiben. Wenn ich jedoch etwas aus der Datenbank lesen muss (z. B. wenn ein Spieler gesperrt ist oder wenn der Spieler einen VIP-Status hat), verwende ich synchrone Abfragen. Dadurch wird …

2
Maßeinheiten umrechnen
Suchen Sie nach der am besten geeigneten Maßeinheit für eine Liste von Stoffen, bei denen die Stoffe in unterschiedlichen (aber kompatiblen) Volumeneinheiten angegeben sind. Einheitenumrechnungstabelle In der Einheitenumrechnungstabelle werden verschiedene Einheiten gespeichert und wie sich diese Einheiten verhalten: id unit coefficient parent_id 36 "microlitre" 0.0000000010000000000000000 37 37 "millilitre" 0.0000010000000000000000000 5 …



2
Postgresql-Funktion zum Erstellen einer Tabelle
Ich möchte eine Funktion erstellen, um eine Tabelle mit einer bestimmten Struktur zu erstellen, die einen Teil des Tabellennamens als Argument verwendet, sodass der Name der Tabelle t_ lautet. Ähnlich wie dies: CREATE OR REPLACE FUNCTION create_table_type1(t_name VARCHAR(30)) RETURNS VOID AS $$ BEGIN EXECUTE "CREATE TABLE IF NOT EXISTS t_"|| …

2
Funktioniert ein COMMIT in einer anonymen plgpsql-Funktion in PostgreSQL 9.5?
Ich importiere eine große Anzahl großer Dateien in eine Reihe von Tabellen, die mithilfe von Schleifen in einem anonymen plpgsql-Codeblock partitioniert werden sollen $do$. $do$ BEGIN FOR yyyy in 2012..2016 THEN EXECUTE $$COPY table$$||yyyy||$$ FROM 'E:\data\file$$||yyyy||$$.csv DELIMITER ',' CSV;$$; END LOOP; END; $do$ LANGUAGE plpgsql Dieser gesamte Vorgang sollte ungefähr …

1
Wie kann ich auf das Feld NEU oder ALT zugreifen, wenn nur der Name des Feldes angegeben wird?
Ich schreibe einen Validierungsauslöser. Der Trigger muss überprüfen, ob die Summe eines Arrays einem anderen Feld entspricht. Da ich viele Instanzen dieser Validierung habe, möchte ich eine einzelne Prozedur schreiben und mehrere Trigger mit jeweils unterschiedlichen Feldern erstellen, die überprüft werden sollen. Zum Beispiel habe ich das folgende Schema: CREATE …




Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.