Mam dwie istniejące tabele (TableA i TableB) i muszę dodać nową kolumnę do TableA, który ma obcy klucz do TableB i ma wartość domyślną, która nie jest null ... i oba te ograniczenia muszą być nazwane. Jak mogę to zrobić?Jak zmienić kolumnę dodawania tabeli z nazwanym ograniczeniem domyślnym i nazwanym ograniczeniem klucza obcego?
36
A
Odpowiedz
73
Dodanie obu ograniczeń w jednym stwierdzeniu nie było tak łatwe, jak myślałem, i nie było tam wielu przykładów (przynajmniej nie byłem w stanie znaleźć żadnego bardzo łatwo), więc Myślałem, że podzielę się tym, jak to zrobiłem, a może ktoś może zaproponować lepszy sposób?
ALTER TABLE [table name] ADD
[New Column Name] [Column Type]
CONSTRAINT [constraint name] DEFAULT ([default value]) NOT NULL,
CONSTRAINT [constraint name] FOREIGN KEY ([New Column Name])
REFERENCES [Other Table] ([Foreign ID])
Przykład:
ALTER TABLE tableA ADD
myNewColumn BIGINT
CONSTRAINT myNamedConstraint_df default (1) NOT NULL,
CONSTRAINT myNamedConstraint_fk FOREIGN KEY (myNewColumn)
REFERENCES tableB (tableBPrimaryKeyID)
0
Zrobiłem to w dwóch częściach, w SQL Server Management Studio.
ALTER TABLE MyTable
ADD MyId uniqueidentifier DEFAULT (NEWID())
Potem ręcznie zmieniono GUID, co powinny one być naprawdę w nowej kolumnie. Następnie dodałem ograniczenie klucza obcego.
ALTER TABLE MyTable
ADD FOREIGN KEY (MyId)
REFERENCES OtherTable(Id)
Powiązane problemy
- 1. Upuść kolumnę z domyślnym ograniczeniem w SQL Server (JEŻELI ISTNIEJĄ)
- 2. SELECT z ograniczeniem w CodeIgniter
- 3. Adnotacja zapytania JPQL z ograniczeniem i przesunięciem
- 4. Jak korzystać z atrybutu "InternalsVisibleTo" z silnie nazwanym złożeniem?
- 5. Jaka jest różnica między kluczem podstawowym a ograniczeniem klucza niepowtarzalnego?
- 6. MVC Routing ograniczeniem Controller Names
- 7. Skróty klucza obcego w tabeli
- 8. Korzystanie z ograniczeniem wielkości Integer w Grails
- 9. Instancja Functor dla GADT z ograniczeniem typu
- 10. Jak zmienić kolumnę klucza podstawowego w grails?
- 11. Wartości pola klucza obcego phpMyAdmin obcego klucza
- 12. Railsy 3 Jak używać: parametry w nazwanym zakresie?
- 13. Sprawdzanie poprawności Java Bean: GroupSequence z ograniczeniem klasy Klasa
- 14. ograniczeniem HList: sprawdzić pojedynczego wystąpienia typu
- 15. wspólna ograniczeniem dla pozycji o HList
- 16. Jak uzyskać BackSpace - z ograniczeniem tylko liczby w polu tekstowym?
- 17. Zamiana wartości z ograniczeniem unikalnym w Entity Framework
- 18. EF nie generuje skojarzenia klucza obcego z klucza obcego w tabeli
- 19. Dezaktywować ograniczenie klucza obcego w tabeli?
- 20. jQuery „find()” z ograniczeniem głębokości, nie mogę używać .children()
- 21. Metoda getModule zwracająca nienazwany moduł dla klasy w nazwanym module
- 22. Relacja klucza obcego z peewee i pytonem
- 23. Sprawdź, czy plik jest potokiem nazwanym (fifo) w pythonie?
- 24. Różnica między operatorem kropki a pełnoprawnym nazwanym wywołaniem w Clojure
- 25. Wyrażenia regularne w języku Python przypisywanie nazwanym grupom
- 26. Jak policzyć liczbę wystąpień każdego identyfikatora klucza obcego w tabeli?
- 27. Zapobiec Visual Studio z ograniczeniem metody setter do wewnętrznej
- 28. Entity Framework instrukcja delete koliduje z ograniczeniem referencyjnym
- 29. Możliwości Wspinaczki n schodów z ograniczeniem na 20. piętrze
- 30. Podczas dodawania ograniczenia klucza obcego, który kierunek jest najlepszą praktyką?