Co to jest domyślne ograniczenie w SQL Server:
Ograniczenie domyślne wstawia wartość domyślną do kolumny, gdy nie podasz wartości dla kolumny.Zrozummy, korzystając z poniższych przykładów.
Scenariusz:
Załóżmy, że musisz utworzyć tabelę dbo.Customer z imieniem, nazwiskiem, nazwą kraju i regionem. Jeśli użytkownik nie poda wartości w kolumnach Nazwa kraju i Region, zawsze chcesz wstawić Country Name='USA' i Region='North America'.Poniższy skrypt może zostać użyty do utworzenia domyślnego ograniczenia dla kolumn Country Name i Region.
USE YourDatabaseName
GO
CREATE TABLE dbo.Customer (
FirstName VARCHAR(50)
,LastName VARCHAR(50)
,CountryName VARCHAR(50) DEFAULT 'USA'
,Region VARCHAR(50) DEFAULT 'North America'
) Teraz wstaw kilka rekordów, podając wartości dla wszystkich kolumn, korzystając z poniższych instrukcji insert.
--Insert some sample data by provided CountryName and Region
Insert into dbo.Customer (FirstName,LastName,CountryName,Region)
Values('Aamir','Shahzad','Pakistan','Asia')
go
Insert into dbo.Customer (FirstName,LastName,CountryName,Region)
Values('Sukhjeet','Singh','India','Asia')
go Teraz wstawiaj tylko wartości w kolumnach Imię i Nazwisko. Ponieważ utworzyliśmy domyślne ograniczenie nazwy kraju i regionu, powinno ono automatycznie wstawić CountryName='USA' i Region='Ameryka Północna'.
Insert into dbo.Customer(FirstName,LastName)
Values ('John','Smith')
go
Insert into dbo.Customer(FirstName,LastName)
Values ('Christy','Ladson') Sprawdźmy dane w tabeli dbo.Customer, aby upewnić się, że nasze ograniczenia domyślne działają zgodnie z oczekiwaniami.
Select * from dbo.Customer
![]() |
| Jak utworzyć domyślne ograniczenie w SQL Server |
Kiedy tworzyliśmy domyślne ograniczenia, nie podaliśmy żadnej nazwy, sprawdźmy, jakie nazwy nadał im SQL Server, używając sys.objects
--Get the Constraint Names in SQL Server Select * from sys.objects where type_desc='DEFAULT_CONSTRAINT'
![]() |
| Jak sprawdzić informacje o domyślnych ograniczeniach w SQL Server |
Jeśli Twoja firma korzysta z pewnych standardów nazewnictwa i chcesz utworzyć domyślne ograniczenie z tymi standardami, możesz określić nazwę podczas ich tworzenia. Używam DF_SchemaName_TableName_ColumnName jako nazwy ograniczenia, jak pokazano poniżej.
use YourDatabaseName Go Create Table dbo.tblCustomer ( FirstName VARCHAR(50), LastName VARCHAR(50), CountryName VARCHAR(50) Constraint DF_dbo_tblCustomer_CountryName Default 'USA' , Region VARCHAR(50) Constraint DF_dbo_tblCustomer_Region default 'North America')
Uruchommy zapytanie na sys.objects jeszcze raz, aby uzyskać nazwę domyślnego ograniczenia z nazwą tabeli.
--Get the Constraint Names in SQL Server Select name,object_name(Parent_object_id) as TableName from sys.objects where type_desc='DEFAULT_CONSTRAINT'
![]() |
| Jak utworzyć domyślne ograniczenie z nazwą w SQL Server |
Wideo demonstracyjne:co to jest ograniczenie domyślne w programie SQL Server i jak utworzyć ograniczenie domyślne


