Czy można zmienić nazwę ograniczenia w programie SQL Server? Nie chcę usuwać i tworzyć nowych, ponieważ to ograniczenie wpływa na inne już istniejące ograniczenia i będę musiał je odtworzyć/zmienić.Zmień nazwę ograniczenia w programie SQL Server?
Odpowiedz
Można zmienić nazwę używając sp_rename użyciu @objtype = 'OBJECT'
to działa na obiektach wymienionych w sys.objects który zawiera ograniczenia
można użyć sp_rename.
sp_rename 'CK_Ax', 'CK_Ax1'
+1 To właśnie używa SSMS podczas zmiany nazwy wiązań. Dla więzów PK przekazuje "INDEX" jako typ obiektu. –
Należy również zauważyć, że ograniczenia CHECK, w przeciwieństwie do PKs, nie wymagają prefiksu tabeli w pierwszym parametrze 'sp_rename', i nie powiedzie się, jeśli go używasz. – mattmc3
Po jakimś bardziej kopanie, stwierdziliśmy, że to rzeczywiście musi być w tej formie:
EXEC sp_rename N'schema.MyIOldConstraint', N'MyNewConstraint', N'OBJECT'
To jest bardziej precyzyjna odpowiedź. Inne formy działają tylko dlatego, że większość ludzi zrzuca wszystkie tabele do domyślnego schematu (zwykle "dbo :) i możesz pominąć domyślny schemat, ale jeśli używasz wielu schematów, jest to poprawne (i zawsze możesz podać" dbo "). – Godeke
odpowiedź jest prawdziwe:
exec sp_rename
@objname = 'Old_Constraint',
@newname = 'New_Constraint',
@objtype = 'object'
Znam ten to stare pytanie, ale znalazłem następujące, aby być bardzo pomocne, oprócz innych wspaniałych odpowiedzi:
Jeśli ograniczenie zostać przemianowany ma okres w nim (kropka), to trzeba ją ująć w nawiasy kwadratowe, tak:
sp_rename 'schema.[Name.With.Period.In.It]', 'New.Name.With.Period.In.It'
- 1. Zmień nazwę kolumny w SQL Server
- 2. Jak zmienić nazwę ograniczenia klucza podstawowego w SQL Server
- 3. Ograniczenia łańcuchów SQL Server
- 4. Zmień nazwę pliku danych bazy danych w programie SQL Server 2005
- 5. Zmień nazwę zdarzenia arkusza w programie Excel
- 6. Zmień nazwę kolumna podczas korzystania PIVOT SQL Server 2008
- 7. Zmień nazwę instancji serwera sql
- 8. Nazwa/Zmień nazwę serwera SQL Azure
- 9. Zmień nazwę schematu tabeli w SQL
- 10. Zmień podstawową kolumnę klucza w SQL Server
- 11. Łączy ntext w programie SQL Server 2005
- 12. SQL Server 2008 - Pobierz ograniczenia tabeli
- 13. Zmień nazwę sekwencji w postgreSQL
- 14. Zmień nazwę katalogu wirtualnego w systemie Windows Server 2008 (IIS7)
- 15. Zmień nazwę w Xcode
- 16. SQL Server 2008: Skopiuj plik i zmienić jego nazwę
- 17. Zmień nazwę/nazwę użytkownika cygwin
- 18. Xamarin.Forms: Zmień ograniczenia RelativeLayout później
- 19. Jak uzyskać wartości parametrów dla zapytania SQL Server w programie SQL Server Profiler
- 20. skopiuj bazę danych SQL Server 2008 i zmień jej nazwę na
- 21. Zmień nazwę katalogu w hdfs
- 22. Zmień nazwę pracy w jenkins
- 23. Zmień nazwę sterowania w XAML
- 24. Zmień nazwę oddziału w Gitkraken?
- 25. SQL Server: drop table klucz podstawowy, nie znając jego nazwę
- 26. Zmień nazwę wyjściową CPack
- 27. Jak upuścić listę tabel SQL Server, ignorując ograniczenia?
- 28. Zmień nazwę Tabela dziedziny
- 29. iPhone Zmień nazwę aplikacji
- 30. Jak zaktualizować przesunięcie kolumny w programie SQL Server?
Tylko w przypadku, gdy nie można uzyskać to do pracy, jest napisane w MSDN - * "Podczas zmiany nazwy ograniczenia należy określić schemat, do którego należy ograniczenie." * –
Dla ograniczeń PK nie ma potrzeby określenia '@objtype = 'OBJECT''. Po prostu podaj starą nazwę i nową nazwę. – pkuderov