Oluşturma, değiştirme ve kuralları kaldırma
smo, kuralları tarafından temsil edilen Rulenesnesini. Kural tanımlanır TextBodyoperators veya yüklemler, In gibi gibi kullanan bir durumu ifade içeren bir metin dizesi, özelliği veya arasında. Kural, sütunları veya diğer veritabanı nesneleri başvuru yapamazsınız. Veritabanı nesneleri başvuru değil yerleşik işlevler dahil edilebilir.
Tanımında TextBodyözelliği girilen veri değerine başvuran değişken içermeli. Herhangi bir ad veya sembol Kural oluştururken değeri temsil etmek için kullanılabilir, ancak ilk karakter olmalıdır @ simgesi.
Örnek
Sunulan kod örneklerinden herhangi birini kullanmak için, programlama ortamını, programlama şablonunu ve uygulamanızı oluşturacağınız programlama dilini seçmeniz gerekecektir. Daha fazla bilgi için, bkz. Visual Studio'da Visual Basic smo proje oluşturun.NET veya Visual Studio'da Visual C# smo proje oluşturun.NET.
Oluşturma, değiştirme ve Visual Basic'te bir kuralı kaldırma
Bu kod örneği, bir kural oluşturmak için bir sütun ekleyin, özelliklerini değiştirmek gösterilmiştir RuleBu sütundan ayırmak ve bunu bırak nesnesi
DimDeyimi Rulenesnesi ile belirsizlik önlemek için tam derleme yolu ile belirtilen bir RuleSystem.Data birleştirmesinin nesnesinde.
'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Reference the AdventureWorks2012 database.
Dim db As Database
db = srv.Databases("AdventureWorks2012")
'Declare a Table object variable and reference the Product table.
Dim tb As Table
tb = db.Tables("Product", "Production")
'Define a Rule object variable by supplying the parent database, name and schema in the constructor.
'Note that the full namespace must be given for the Rule type to differentiate it from other Rule types.
Dim ru As Microsoft.SqlServer.Management.Smo.Rule
ru = New Rule(db, "TestRule", "Production")
'Set the TextHeader and TextBody properties to define the rule.
ru.TextHeader = "CREATE RULE [Production].[TestRule] AS"
ru.TextBody = "@value BETWEEN GETDATE() AND DATEADD(year,4,GETDATE())"
'Create the rule on the instance of SQL Server.
ru.Create()
'Bind the rule to a column in the Product table by supplying the table, schema, and
'column as arguments in the BindToColumn method.
ru.BindToColumn("Product", "SellEndDate", "Production")
'Unbind from the column before removing the rule from the database.
ru.UnbindFromColumn("Product", "SellEndDate", "Production")
ru.Drop()
Oluşturma, değiştirme ve bir kuralı Visual C# içinde kaldırma
Bu kod örneği, bir kural oluşturmak için bir sütun ekleyin, özelliklerini değiştirmek gösterilmiştir RuleBu sütundan ayırmak ve bunu bırak nesnesi
DimDeyimi Rulenesnesi ile belirsizlik önlemek için tam derleme yolu ile belirtilen bir RuleSystem.Data birleştirmesinin nesnesinde.
{
//Connect to the local, default instance of SQL Server.
Server srv;
srv = new Server();
//Reference the AdventureWorks2012 database.
Database db;
db = srv.Databases["AdventureWorks2012"];
//Define a Rule object variable by supplying the parent database, name and schema in the constructor.
//Note that the full namespace must be given for the Rule type to differentiate it from other Rule types.
Microsoft.SqlServer.Management.Smo.Rule ru;
ru = new Rule(db, "TestRule", "Production");
//Set the TextHeader and TextBody properties to define the rule.
ru.TextHeader = "CREATE RULE [Production].[TestRule] AS";
ru.TextBody = "@value BETWEEN GETDATE() AND DATEADD(year,4,GETDATE())";
//Create the rule on the instance of SQL Server.
ru.Create();
//Bind the rule to a column in the Product table by supplying the table, schema, and
//column as arguments in the BindToColumn method.
ru.BindToColumn("Product", "SellEndDate", "Production");
//Unbind from the column before removing the rule from the database.
ru.UnbindFromColumn("Product", "SellEndDate", "Production");
ru.Drop();
}
{
//Connect to the local, default instance of SQL Server.
Server srv;
srv = new Server();
//Reference the AdventureWorks2012 database.
Database db;
db = srv.Databases["AdventureWorks2012"];
//Define a Rule object variable by supplying the parent database, name and schema in the constructor.
//Note that the full namespace must be given for the Rule type to differentiate it from other Rule types.
Microsoft.SqlServer.Management.Smo.Rule ru;
ru = new Rule(db, "TestRule", "Production");
//Set the TextHeader and TextBody properties to define the rule.
ru.TextHeader = "CREATE RULE [Production].[TestRule] AS";
ru.TextBody = "@value BETWEEN GETDATE() AND DATEADD(year,4,GETDATE())";
//Create the rule on the instance of SQL Server.
ru.Create();
//Bind the rule to a column in the Product table by supplying the table, schema, and
//column as arguments in the BindToColumn method.
ru.BindToColumn("Product", "SellEndDate", "Production");
//Unbind from the column before removing the rule from the database.
ru.UnbindFromColumn("Product", "SellEndDate", "Production");
ru.Drop();
}
Oluşturma, değiştirme ve PowerShell içinde bir kuralı kaldırma
Bu kod örneği, bir kural oluşturmak için bir sütun ekleyin, özelliklerini değiştirmek gösterilmiştir RuleBu sütundan ayırmak ve bunu bırak nesnesi
DimDeyimi Rulenesnesi ile belirsizlik önlemek için tam derleme yolu ile belirtilen bir RuleSystem.Data birleştirmesinin nesnesinde.
# Set the path context to the local, default instance of SQL Server and get a reference to AdventureWorks2012
CD \sql\localhost\default\databases
$db = get-item Adventureworks2012
# Define a Rule object variable by supplying the parent database, name and schema in the constructor.
$ru = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Rule `
-argumentlist $db, "TestRule", "Production"
#Set the TextHeader and TextBody properties to define the rule.
$ru.TextHeader = "CREATE RULE [Production].[TestRule] AS"
$ru.TextBody = "@value BETWEEN GETDATE() AND DATEADD(year,4,GETDATE())"
#Create the rule on the instance of SQL Server.
$ru.Create()
# Bind the rule to a column in the Product table by supplying the table, schema, and
# column as arguments in the BindToColumn method.
$ru.BindToColumn("Product", "SellEndDate", "Production")
#Unbind from the column before removing the rule from the database.
$ru.UnbindFromColumn("Product", "SellEndDate", "Production")
$ru.Drop()
# Set the path context to the local, default instance of SQL Server and get a reference to AdventureWorks2012
CD \sql\localhost\default\databases
$db = get-item Adventureworks2012
# Define a Rule object variable by supplying the parent database, name and schema in the constructor.
$ru = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Rule `
-argumentlist $db, "TestRule", "Production"
#Set the TextHeader and TextBody properties to define the rule.
$ru.TextHeader = "CREATE RULE [Production].[TestRule] AS"
$ru.TextBody = "@value BETWEEN GETDATE() AND DATEADD(year,4,GETDATE())"
#Create the rule on the instance of SQL Server.
$ru.Create()
# Bind the rule to a column in the Product table by supplying the table, schema, and
# column as arguments in the BindToColumn method.
$ru.BindToColumn("Product", "SellEndDate", "Production")
#Unbind from the column before removing the rule from the database.
$ru.UnbindFromColumn("Product", "SellEndDate", "Production")
$ru.Drop()