Freigeben über


Erstellen, Ändern und Löschen von Standardwerten

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics SQL-Datenbank in Microsoft Fabric

In SQL Server Management Objects (SMO) wird die Standardeinschränkung durch das Default Objekt dargestellt.

Die TextBody-Eigenschaft des Default-Objekts wird verwendet, um den Wert zu setzen, der eingefügt werden soll. Dies kann eine Konstante oder eine Transact-SQL-Anweisung sein, die einen konstanten Wert zurückgibt, z. B. GETDATE(). Die TextBody-Eigenschaft kann über die Alter-Methode nicht geändert werden. Stattdessen muss das Default-Objekt gelöscht und neu erstellt werden.

Beispiel

Zum Verwenden eines angegebenen Codebeispiels müssen Sie die Programmierumgebung, Programmiervorlage und die zu verwendende Programmiersprache auswählen, um Ihre Anwendung zu erstellen. Weitere Informationen finden Sie unter Erstellen eines Visual C#-SMO-Projekts in Visual Studio .NET.

Erstellen, Ändern und Löschen eines Standardwerts in Visual Basic

In diesem Codebeispiel wird gezeigt, wie Sie einen Standard erstellen, der einfachen Text ist, und einen anderen Standardwert, der eine Transact-SQL-Anweisung ist. Der Standardwert muss über die BindToColumn-Methode angehängt und über die UnbindFromColumn-Methode getrennt werden.

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks2022 database.
Dim db As Database
db = srv.Databases("AdventureWorks2022")
'Define a Default object variable by supplying the parent database and the default name 
'in the constructor.
Dim def As [Default]
def = New [Default](db, "Test_Default2")
'Set the TextHeader and TextBody properties that define the default.
def.TextHeader = "CREATE DEFAULT [Test_Default2] AS"
def.TextBody = "GetDate()"
'Create the default on the instance of SQL Server.
def.Create()
'Declare a Column object variable and reference a column in the AdventureWorks2022 database.
Dim col As Column
col = db.Tables("SpecialOffer", "Sales").Columns("StartDate")
'Bind the default to the column.
def.BindToColumn("SpecialOffer", "StartDate", "Sales")
'Unbind the default from the column and remove it from the database.
def.UnbindFromColumn("SpecialOffer", "StartDate", "Sales")
def.Drop()

Erstellen, Ändern und Löschen eines Standardwerts in Visual C#

In diesem Codebeispiel wird gezeigt, wie Sie einen Standard erstellen, der einfachen Text ist, und einen anderen Standardwert, der eine Transact-SQL-Anweisung ist. Der Standardwert muss über die BindToColumn-Methode angehängt und über die UnbindFromColumn-Methode getrennt werden.

{  
  
          Server srv = new Server();  
  
            //Reference the AdventureWorks2022 database.   
            Database  db = srv.Databases["AdventureWorks2022"];  
  
            //Define a Default object variable by supplying the parent database and the default name   
            //in the constructor.   
            Default def = new Default(db, "Test_Default2");  
  
            //Set the TextHeader and TextBody properties that define the default.   
            def.TextHeader = "CREATE DEFAULT [Test_Default2] AS";  
            def.TextBody = "GetDate()";  
  
            //Create the default on the instance of SQL Server.   
            def.Create();  
  
            //Bind the default to a column in a table in AdventureWorks2022  
            def.BindToColumn("SpecialOffer", "StartDate", "Sales");  
  
            //Unbind the default from the column and remove it from the database.   
            def.UnbindFromColumn("SpecialOffer", "StartDate", "Sales");  
            def.Drop();  
        }  

Erstellen, Ändern und Löschen eines Standardwerts in PowerShell

In diesem Codebeispiel wird gezeigt, wie Sie einen Standard erstellen, der einfachen Text ist, und einen anderen Standardwert, der eine Transact-SQL-Anweisung ist. Der Standardwert muss über die BindToColumn-Methode angehängt und über die UnbindFromColumn-Methode getrennt werden.

# Set the path context to the local, default instance of SQL Server and get a reference to AdventureWorks2022  
CD \sql\localhost\default\databases  
$db = get-item AdventureWorks2022  
  
#Define a Default object variable by supplying the parent database and the default name in the constructor.  
$def = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Default `  
-argumentlist $db, "Test_Default2"  
  
#Set the TextHeader and TextBody properties that define the default.   
$def.TextHeader = "CREATE DEFAULT [Test_Default2] AS"  
$def.TextBody = "GetDate()"  
  
#Create the default on the instance of SQL Server.   
$def.Create()  
  
#Bind the default to the column.   
$def.BindToColumn("SpecialOffer", "StartDate", "Sales")  
  
#Unbind the default from the column and remove it from the database.   
$def.UnbindFromColumn("SpecialOffer", "StartDate", "Sales")  
$def.Drop()  

Weitere Informationen

Default