Pracuję nad funkcją, która pozwala mi dodać indeks, jeśli nie istnieje. Mam problem z tym, że nie mogę uzyskać listy indeksów do porównania. jakieś pomysły? Jest to podobny problem do tworzenia kolumny, który został rozwiązany za pomocą tego kodu:
PL / pgSQL jest domyślnym językiem proceduralnym systemu baz danych PostgreSQL. Pytania dotyczące PL / pgSQL również prawdopodobnie powinny być oznaczone jako „PostgreSQL”.
Pracuję nad funkcją, która pozwala mi dodać indeks, jeśli nie istnieje. Mam problem z tym, że nie mogę uzyskać listy indeksów do porównania. jakieś pomysły? Jest to podobny problem do tworzenia kolumny, który został rozwiązany za pomocą tego kodu:
Wychodząc z tła MySQL, gdzie wydajność procedury przechowywanej (starszy artykuł) i użyteczność są wątpliwe, oceniam PostgreSQL pod kątem nowego produktu dla mojej firmy. Jedną z rzeczy, które chciałbym zrobić, jest przeniesienie logiki aplikacji do procedur przechowywanych, więc tutaj proszę o...
Czytałem o różnych UPSERTimplementacjach w PostgreSQL, ale wszystkie te rozwiązania są stosunkowo stare lub względnie egzotyczne ( na przykład przy użyciu zapisywalnego CTE ). I po prostu wcale nie jestem ekspertem od psql, aby dowiedzieć się od razu, czy te rozwiązania są stare, ponieważ są...
To pytanie nie dotyczy bytea v. Oid v. Blob v. Dużych obiektów itp. Mam tabelę zawierającą integerpole klucza podstawowego i byteapole. Chciałbym wprowadzić dane w byteapole. Można to przypuszczalnie zrobić w jednym z PL/języków i mogę się tym zająć PL/Pythonw przyszłości. Ponieważ wciąż...
W komentarzu do tego pytania wspomniano, że istnieje niewielka różnica w „Stored Procedrues” i „Stored Funtions” w PostgreSQL. Komentarz prowadzi do artykułu na Wikipedii, ale niektóre z nich wydają się nie mieć zastosowania (np. Że można ich użyć w SELECToświadczeniu). Sama składnia wydaje się...
Czy w Postgres przygotowane zapytania i funkcje zdefiniowane przez użytkownika są równoważne jako mechanizm zabezpieczający przed wstrzyknięciem SQL ? Czy są jakieś zalety jednego podejścia względem
Muszę przypisać wartości do 2 zmiennych, jak poniżej w funkcji Postgres. a := select col1 from tbl where ... b := select col2 from tbl where ... Jak mogę przypisać 2 wartości do 2 zmiennych w jednym poleceniu? Lubić a,b := select col1,col2 from tbl where
Mam system, w którym nie mogę kontrolować projektu niektórych tabel (replikowanych przez Slony-I), więc mam szereg tego, co nazywamy „tabelami cieni”, w których wydobywam niektóre informacje z replikowanych tabel i przechowuj go w przetworzonej formie, której potrzebuję, jednocześnie usuwając...
Czy ktoś może streścić różnice między: http://www.postgresql.org/docs/9.1/static/xfunc-sql.html i http://www.postgresql.org/docs/9.1/static/plpgsql.html ? Główne punkty: różnice koncepcyjne biorąc pod uwagę problem rodziny, wygoda użytkowania kwestie
Jest to możliwe przy użyciu pgadminalbo plsqlsię trzymać planu zapytań do SQL instrukcji wykonywanych Wewnątrz u ser d efined f namaszczenie (UDF), używając EXPLAIN. Jak więc uzyskać plan zapytań dla konkretnego wywołania UDF? Widzę, jak UDF jest abstrahowany w pojedynczej operacji F()w...
Mam małą (~ 10 wierszy) tabelę wywoływaną restrictionsw mojej bazie danych PostgreSQL, w której wartości są codziennie usuwane i wstawiane. Chciałbym mieć tabelę o nazwie restrictions_deleted, w której każdy usuwany wiersz restrictionsbędzie zapisywany automatycznie. Ponieważ restrictionsma...
Korzystam z funkcji PL / pgSQL w PostgreSQL 9.3 z kilkoma złożonymi zapytaniami wewnątrz: 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...
Biorąc pod uwagę tę konfigurację w aktualnym Postgres 9.4 ( z tego powiązanego pytania ): 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'); Istnieje również SQL Fiddle z poprzedniego pytania. Napisałem...
Obecnie eksperymentuję trochę z PL / pgSQL i chcę wiedzieć, czy istnieje bardziej elegancki sposób na zrobienie czegoś takiego: 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 into...
Próbuję zwrócić wiele rekordów przy użyciu typu danych RECORD, czy istnieje sposób, aby dołączyć do RECORD i dodawać / dodawać nową wartość z każdą iteracją do tego rekordu. to znaczy, chcę dołączyć do rectak, że recstaje się zestawem wierszy po zakończeniu pętli, które mogę po prostu POWRÓT na...
Według dokumentów: OBECNIE Odśwież widok zmaterializowany bez blokowania współbieżnych zaznaczeń w widoku zmaterializowanym. (...) ... INNE TREŚCI ... Nawet z tą opcją tylko jeden ODŚWIEŻANIE może działać jednocześnie z dowolnym zmaterializowanym widokiem . I miał funkcję sprawdzenia...
Gdy PostgreSQL zgłasza wyjątek, pojawia się wiersz „KONTEKST”, taki jak: ERROR: INSERT has more target COLUMNS than expressions LINE 3: ... ^ QUERY: INSERT INTO ... CONTEXT: PL/pgSQL FUNCTION "XXXXX" line 4 at SQL statement Ale kiedy rzucę wyjątek, tej linii nie ma. Nie znalazłem jak go...
Próbuję znaleźć informacje na temat funkcji zdefiniowanych przez użytkownika PostgreSQL w działaniu języków proceduralnych do zadań w czasie rzeczywistym. Jak porównują się do wbudowanych funkcji? Czy jest jakaś różnica (narzutowa) w jaki sposób Postgres wywołuje / zarządza funkcjami plpython...
Używam Postgresql 9.1, z Ubuntu 12.04. Zainspirowany odpowiedź Craiga do mojego zapytania połączeniem setof typu lub setof rekordu myślałem, że go dobrze z użyciem return query, setof recordoraz generator serii do tej funkcji plpgsql: create or replace function compute_all_pair_by_craig(id_obj...
W Postgres otrzymujemy „ślad stosu” wyjątków za pomocą tego kodu: EXCEPTION WHEN others THEN GET STACKED DIAGNOSTICS v_error_stack = PG_EXCEPTION_CONTEXT; Działa to dobrze w przypadku „naturalnych” wyjątków, ale jeśli zgłaszamy wyjątek za pomocą RAISE EXCEPTION 'This is an error!'; ... wtedy...