Database.CompatibilityLevel プロパティ
データベースの互換性レベルを取得または設定します。
名前空間: Microsoft.SqlServer.Management.Smo
アセンブリ: Microsoft.SqlServer.Smo (Microsoft.SqlServer.Smo.dll)
構文
'宣言
<SfcPropertyAttribute(SfcPropertyFlags.None Or SfcPropertyFlags.Expensive Or SfcPropertyFlags.Standalone Or SfcPropertyFlags.SqlAzureDatabase Or SfcPropertyFlags.Design)> _
Public Property CompatibilityLevel As CompatibilityLevel
Get
Set
'使用
Dim instance As Database
Dim value As CompatibilityLevel
value = instance.CompatibilityLevel
instance.CompatibilityLevel = value
[SfcPropertyAttribute(SfcPropertyFlags.None|SfcPropertyFlags.Expensive|SfcPropertyFlags.Standalone|SfcPropertyFlags.SqlAzureDatabase|SfcPropertyFlags.Design)]
public CompatibilityLevel CompatibilityLevel { get; set; }
[SfcPropertyAttribute(SfcPropertyFlags::None|SfcPropertyFlags::Expensive|SfcPropertyFlags::Standalone|SfcPropertyFlags::SqlAzureDatabase|SfcPropertyFlags::Design)]
public:
virtual property CompatibilityLevel CompatibilityLevel {
CompatibilityLevel get () sealed;
void set (CompatibilityLevel value) sealed;
}
[<SfcPropertyAttribute(SfcPropertyFlags.None|SfcPropertyFlags.Expensive|SfcPropertyFlags.Standalone|SfcPropertyFlags.SqlAzureDatabase|SfcPropertyFlags.Design)>]
abstract CompatibilityLevel : CompatibilityLevel with get, set
[<SfcPropertyAttribute(SfcPropertyFlags.None|SfcPropertyFlags.Expensive|SfcPropertyFlags.Standalone|SfcPropertyFlags.SqlAzureDatabase|SfcPropertyFlags.Design)>]
override CompatibilityLevel : CompatibilityLevel with get, set
final function get CompatibilityLevel () : CompatibilityLevel
final function set CompatibilityLevel (value : CompatibilityLevel)
プロパティ値
型: Microsoft.SqlServer.Management.Smo.CompatibilityLevel
データベースの互換性レベルを示す CompatibilityLevel オブジェクトの値。
実装
IDatabaseOptions.CompatibilityLevel
説明
このプロパティは、一部のデータベース アクションで互換性が必要な SQL Server の以前のバージョンを示します。 このプロパティは、sp_dbcmptlevel システム ストアド プロシージャと同様に機能します。
注 |
---|
SMO では、互換性レベル 60 はサポートされていません。 互換性レベル 60 に設定されたデータベースで SMO を使用すると、操作によってはエラーが発生します。 また、MSDB データベースの CompatibilityLevel プロパティが Version70 に設定されていると、SMO が COLLATE エラーによる例外をスローする可能性があります。 |
使用例
VB
'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")
'Get the current compatibility level.
Dim cl As CompatibilityLevel
cl = db.CompatibilityLevel
'Display the compatibility level of the database.
Console.WriteLine("Compatibility level = " + cl.ToString)
'Set the compatibility level to a different value.
db.CompatibilityLevel = CompatibilityLevel.Version80
db.Alter()
'Restore the compatibility level to original value.
db.CompatibilityLevel = cl
db.Alter()
PowerShell
$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("AdventureWorks2012")
$cl = New-Object Microsoft.SqlServer.Management.Smo.CompatibilityLevel
$cl = $db.CompatiblityLevel
Write-Host "Compatibility level =" $db.CompatibilityLevel
$db.CompatibilityLevel = [Microsoft.SqlServer.Management.Smo.CompatibilityLevel]'Version80'
$db.Alter()
$db.CompatibilityLevel =
Write-Host "Collation is case-sensitive =" $db.CaseSensitive
関連項目
参照
Microsoft.SqlServer.Management.Smo 名前空間