Database.CompatibilityLevel Property

Gets or sets the compatibility level for the database.

Namespace: Microsoft.SqlServer.Management.Smo
Assembly: Microsoft.SqlServer.Smo (in microsoft.sqlserver.smo.dll)

Syntax

'Declaration
Public Property CompatibilityLevel As CompatibilityLevel
public CompatibilityLevel CompatibilityLevel { get; set; }
public:
property CompatibilityLevel CompatibilityLevel {
    CompatibilityLevel get ();
    void set (CompatibilityLevel value);
}
/** @property */
public CompatibilityLevel get_CompatibilityLevel ()

/** @property */
public void set_CompatibilityLevel (CompatibilityLevel value)
public function get CompatibilityLevel () : CompatibilityLevel

public function set CompatibilityLevel (value : CompatibilityLevel)

Property Value

A CompatibilityLevel object value that specifies the compatibility level of the database.

Remarks

Updated text:17 July 2006

This property specifies an earlier version of Microsoft SQL Server for which certain database actions are to be compatible. This property works just like the sp_dbcmptlevel system stored procedure.

Note

SQL Server Management Objects (SMO) does not support compatibility level 60. If you use SMO with a database set to compatibility level 60, some operations will produce errors.

Note

If the CompatibilityLevel property for the MSDB database is set to Version70 SMO may throw an exception with a COLLATE error.

This namespace, class, or member is supported only in version 2.0 of the Microsoft .NET Framework.

Example

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server

'Reference the AdventureWorks database.
Dim db As Database
db = srv.Databases("AdventureWorks")

'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()

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also

Reference

Database Class
Database Members
Microsoft.SqlServer.Management.Smo Namespace

Other Resources

How to: Create, Alter, and Remove a Database in Visual Basic .NET
Creating, Altering, and Removing Databases
CREATE DATABASE (Transact-SQL)

Change History

Release

History

17 July 2006

Changed content:
  • Added text to the Remarks section.

  • Added code to the Example section.