Rodzaj ograniczenia integralności stosowanego na platformie RDBMS w celu zapewnienia, że wartość w kolumnie jest zgodna z jednym z zakresu kluczowych wartości z innej tabeli.
Chcę sposób, aby ustalić, które kolumny w danej bazie danych są połączone za pomocą relacji PK / FK. Mogę zwrócić informacje PK / FK dla danej tabeli za pośrednictwem SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS cu WHERE EXISTS ( SELECT tc.* FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS tc WHERE tc.CONSTRAINT_CATALOG = 'MyDatabase' AND tc.TABLE_NAME …
Strojenie wydajności hurtowni danych za pomocą indeksów. Jestem dość nowy w SQL Server 2014. Microsoft opisuje następujące kwestie: „Uważamy indeks klastrowanego magazynu kolumn za standard do przechowywania tabel faktów hurtowni dużych danych i oczekujemy, że będzie on używany w większości scenariuszy hurtowni danych. Ponieważ indeks klastrowanego magazynu kolumn jest aktualizowalny, …
Mam dużą bazę danych, z której muszę wyodrębnić wszystkie klucze podstawowe i klucze obce z każdej tabeli. Mam pgAdmin III. Czy istnieje sposób, aby to zrobić automatycznie i nie przeglądać każdego stołu ręcznie?
Mam byt, który nie może istnieć bez zdefiniowania go przez inny, i chcę, aby ten byt uczestniczył w relacji wiele do wielu. Przykład: artysta ma album (album nie może istnieć bez artysty), album ma także wiele utworów, ale ten sam utwór może istnieć w wielu albumach. Mamy więc relację wiele …
Kiedy próbuję wykonać pg_restore.exeplik zrzutu z bazy danych, generuje dziesiątki błędów, wszystko to samo: ERROR: insert or update on table "someTable" violates foreign key constraint "aConstraintName" Wynika to oczywiście z faktu, że opróżniłem bazę danych przed przywróceniem jej z pliku zrzutu (ten plik pochodzi z produkcyjnej bazy danych) ... to …
Mam commentstabelę, którą można uprościć do tego stopnia : comments ======= id user_id text parent_id gdzie parent_idjest zerowalne, ale może być kluczem do jego komentarza nadrzędnego. Jak mogę teraz selectwszystkich potomków określonego komentarza? Komentarze mogą być kilka poziomów niżej ...
Prawdopodobnie mam wąski umysł, ale jeśli utworzę ograniczenie klucza obcego, a wiersz zostanie zaktualizowany lub usunięty, utracę to połączenie, jeśli kolumna tabeli podrzędnej zostanie ustawiona na NULL. Jaki jest cel celowego utrzymywania tych osieroconych rzędów?
Tabele odnośników (lub tabele kodów , jak nazywają je niektóre osoby) są zwykle zbiorem możliwych wartości, które można podać dla określonej kolumny. Załóżmy na przykład, że mamy tablicę przeglądową o nazwie party(przeznaczoną do przechowywania informacji o partiach politycznych), która ma dwie kolumny: party_code_idn, który przechowuje generowane przez system wartości liczbowe …
Obecnie mam klucz obcy między dwiema jednostkami i chciałbym uzależnić tę relację od typu podmiotu jednej z tabel. Oto hierarchia tabel, odbywa się to poprzez refrencje FK od dziecka do rodzica Store / \ Employees \ TransactionalStores / | \ Kiosks | BrickMortars Onlines Obecnie mam relację FK od pracownika …
Czy istnieje najlepsza praktyka dotycząca tego, czy klucz obcy między tabelami powinien łączyć się z kluczem naturalnym czy kluczem zastępczym? Jedyną dyskusją, którą naprawdę znalazłem (chyba że brakuje mi google-fu), jest odpowiedź Jacka Douglasa na to pytanie , a jego rozumowanie wydaje mi się słuszne. Zdaję sobie sprawę z dyskusji, …
Stworzyłem skrypt, który usuwa wszystkie klucze obce z bazy danych, tak jak poniżej: ALTER TABLE MyTable1 DROP CONSTRAINT FK_MyTable1_col1 ALTER TABLE MyTable2 DROP CONSTRAINT FK_MyTable2_col1 ALTER TABLE MyTable2 DROP CONSTRAINT FK_MyTable2_col2 Zaskakuje mnie to, że skrypt zajmuje dużo czasu: średnio 20 sekund na każde DROP FK. Rozumiem teraz, że utworzenie …
Pracuję nad przeniesieniem dużej aplikacji internetowej pl / sql na serwer dedykowany. Ta aplikacja znajduje się w jednym schemacie z 70 pakietami kodu programu. Ta aplikacja została złożona około 15 osób w różnym czasie. I było dla nas normalną praktyką tworzenie obcych kluczy w tabelach referencyjnych w różnych schematach, ponieważ …
Wiem, że jeśli wykonam EXISTS()wywołanie wartości wyszukiwania FK, to jeśli to ograniczenie FK jest zaufane, wynik jest natychmiastowy. A jeśli nie jest zaufany (np. Kiedy tworzę FK za pomocą WITH NOCHECK), SQL Server musi przejść i sprawdzić tabelę, aby sprawdzić, czy wartość rzeczywiście tam jest. Czy mogę coś jeszcze stracić …
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 …
Czy można zaktualizować wartość kolumny klucza podstawowego poprzez kaskadowanie aktualizacji wśród wszystkich kluczy obcych, do których się ona odnosi? # EDYCJA 1: Po uruchomieniu zapytania followinq select * from sys.foreign_keys where referenced_object_id=OBJECT_ID('myTable') , Widzę, że aktualizacja_referencyjna aktywność jest ustawiona na 0. W związku z tym po zaktualizowaniu kolumn moich kluczy …
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.