Uruchomiłem następujący SQL w psql: CREATE USER bspu LOGIN; CREATE DATABASE bsp OWNER bspu; GRANT ALL PRIVILEGES ON DATABASE bsp TO bspu; \c bsp CREATE TABLE users ( id SERIAL PRIMARY KEY, client_id VARCHAR(20) NOT NULL, api_key VARCHAR(100) NOT NULL, api_secret VARCHAR(100) NOT NULL, auth_token VARCHAR(128) NOT NULL ); Gdy …
Cześć Nie mogę uzyskać ograniczenia działającego tak, jak się spodziewam w postgreSQL. Z poziomu pgadmin wykonuję następujące zapytanie SQL. -- Check: "TypeCheck" -- ALTER TABLE "ComLog" DROP CONSTRAINT "TypeCheck"; ALTER TABLE "ComLog" ADD CONSTRAINT "TypeCheck" CHECK ("Type" SIMILAR TO 'email|post|IRL|minutes'); COMMENT ON CONSTRAINT "TypeCheck" ON "ComLog" IS 'One of email|post|IRL|minutes'; …
Pytanie dla początkujących: Mam drogą funkcję f(x, y)w dwóch kolumnach xiy w mojej tabeli bazy danych. Chcę wykonać zapytanie, które daje mi wynik funkcji jako kolumny i nakłada na nią ograniczenie, coś w rodzaju SELECT *, f(x, y) AS func FROM table_name WHERE func < 10; Jednak to nie działa, …
Mam strukturę tabeli podzielonej na partycje, taką jak: CREATE TABLE measurements ( sensor_id bigint, tx timestamp, measurement int ); CREATE TABLE measurements_201201( CHECK (tx >= '2012-01-01 00:00:00'::timestamp without time zone AND tx < ('2012-01-01 00:00:00'::timestamp without time zone + '1 mon'::interval)) )INHERITS (measurements); CREATE INDEX ON measurements_201201(sensor_id); CREATE INDEX ON …
Microsoft obecnie zezwala na tę składnię. SELECT * FROM ( VALUES (1) ) AS g(x) WHERE EXISTS ( SELECT * FROM ( VALUES (1),(1) ) AS t(x) WHERE g.x = t.x HAVING count(*) > 1 ); Zauważ, że nie ma GROUP BYw tej EXISTSklauzuli, czy jest to poprawny ANSI SQL. …
Biorąc pod uwagę dwie liczby ni mchcę wygenerować serię formularza 1, 2, ..., (n-1), n, n, (n-1), ... 2, 1 i powtórz to mrazy. Na przykład dla n = 3i m = 4chcę ciąg następujących 24 liczb: 1, 2, 3, 3, 2, 1, 1, 2, 3, 3, 2, 1, 1, …
Mam tabelę, która będzie zawierać około 15 milionów rekordów. Teraz muszę dodać indeks do tabeli. Dodanie indeksu zajmie trochę czasu, aby zaktualizować każdy wpis w tabeli. Jestem dość zdezorientowany, czy dodanie indeksu spowoduje przestoje. Jeśli tak, to jak mogę przezwyciężyć przestoje?
Omawiając rekurencyjne rozwiązanie CTE dla tego pytania: Uzyskaj ostatnie 5 różnych wartości dla każdego identyfikatora @ypercube natknął się na zaskakujący wyjątek, który skłonił nas do zbadania sposobu obsługi modyfikatorów typów. Znaleźliśmy zaskakujące zachowanie. 1. Rzutowanie typu zachowuje modyfikator typu w niektórych kontekstach Nawet jeśli nie polecono. Najbardziej podstawowy przykład: SELECT …
Patrzyłem, information_schema.role_table_grantskiedy zobaczyłem publicw granteekolumnie, a potem sprawdziłem, information_schema.enabled_rolesale to role_namenie istnieje. => Kto lub jaka jest publicrola?
Mam dwa stoliki. Jednym z nich jest tabela dziennika; inny zawiera zasadniczo kody kuponów, których można użyć tylko raz. Użytkownik musi mieć możliwość zrealizowania kuponu, który wstawi wiersz do tabeli dziennika i oznaczy kupon jako wykorzystany (aktualizując usedkolumnę do true). Oczywiście jest tutaj oczywisty problem z wyścigiem / kwestią bezpieczeństwa. …
Rozumiem, że wyzwalacz w tabeli t zdefiniowanej za pomocą FOR EACH STATEMENTzostanie uruchomiony raz, gdy wykonam polecenie an UPDATE t .... Teraz, kiedy tzostanie zdefiniowane za pomocą FOREIGN KEY ... REFERENCES a ... ON UPDATE CASCADEi zaktualizuję N wierszy a, czy spowoduje to, że wyzwalacz zostanie wywołany raz, czy N …
Pracujemy z wieloma maszynami wirtualnymi z systemem Linux w środowisku vmware / Shared Storage, każda z nich ma własną instancję postgreSQL (połączenie wersji 9.0 i 9.3). Obecnie cała maszyna wirtualna znajduje się na jednej partycji / woluminie głównym i odnieśliśmy wielki sukces (~ 8 lat), wykorzystując migawki bazowych woluminów VMFS …
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 nie ma śladu stosu. Zgodnie z wpisem na liście …
Jestem nowicjuszem w bazach danych. Przeczytałem i przekonałem się, że prawdopodobnie nie jest dobrym pomysłem używanie adresu e-mail jako klucza podstawowego, ponieważ porównania ciągów są wolniejsze, co wpływa na wydajność w złożonych sprzężeniach, a jeśli e-mail się zmieni, musiałbym zmienić wszystkie klucze obce, co wymaga dużo wysiłku. Ale jeśli moja …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.