VistaDB 5






CompatibilityMode Property
The CompatibilityMode setting for the life of a specific connection. A different setting value may alter the handling of SQL code including sprocs and UDFs already previously stored in the database.
Syntax
'Declaration
 
<System.ComponentModel.DisplayNameAttribute("Compatibility Mode")>
<System.ComponentModel.DescriptionAttribute("CompatibilityMode current setting for legacy VistaDB vs. SQL Server syntax on this connection.")>
<System.ComponentModel.RefreshPropertiesAttribute(RefreshProperties.All)>
Public Property CompatibilityMode As VistaDBConnection.CompatibilityMode
'Usage
 
Dim instance As VistaDBConnectionStringBuilder
Dim value As VistaDBConnection.CompatibilityMode
 
instance.CompatibilityMode = value
 
value = instance.CompatibilityMode
[System.ComponentModel.DisplayName("Compatibility Mode")]
[System.ComponentModel.Description("CompatibilityMode current setting for legacy VistaDB vs. SQL Server syntax on this connection.")]
[System.ComponentModel.RefreshProperties(RefreshProperties.All)]
public VistaDBConnection.CompatibilityMode CompatibilityMode {get; set;}
public read-write property CompatibilityMode: VistaDBConnection.CompatibilityMode; 
System.ComponentModel.DisplayNameAttribute("Compatibility Mode")
System.ComponentModel.DescriptionAttribute("CompatibilityMode current setting for legacy VistaDB vs. SQL Server syntax on this connection.")
System.ComponentModel.RefreshPropertiesAttribute(RefreshProperties.All)
public function get,set CompatibilityMode : VistaDBConnection.CompatibilityMode
[System.ComponentModel.DisplayName("Compatibility Mode")]
[System.ComponentModel.Description("CompatibilityMode current setting for legacy VistaDB vs. SQL Server syntax on this connection.")]
[System.ComponentModel.RefreshProperties(RefreshProperties.All)]
public: __property VistaDBConnection.CompatibilityMode get_CompatibilityMode();
public: __property void set_CompatibilityMode( 
   VistaDBConnection.CompatibilityMode value
);
[System.ComponentModel.DisplayName("Compatibility Mode")]
[System.ComponentModel.Description("CompatibilityMode current setting for legacy VistaDB vs. SQL Server syntax on this connection.")]
[System.ComponentModel.RefreshProperties(RefreshProperties.All)]
public:
property VistaDBConnection.CompatibilityMode CompatibilityMode {
   VistaDBConnection.CompatibilityMode get();
   void set (    VistaDBConnection.CompatibilityMode value);
}
Remarks

An application will generally want to pick a particular CompatibilityMode and stay with it since changing to a different mode could break sprocs, UDFs, and other SQL code used by the application.

Most applications using VistaDB can simply use the default (Normal) mode which will expose fixes for faulty behavior and expose new syntax features provided usage which works correctly will not be broken by the changes. Usage with behavior or results which are clearly faulty may be corrected to match the standard (SQL Server) in any new release--with mention in the Release Notes.

Applications which target cross-compatibility with SQL Server may wish to use Strict mode which will make corrections for incompatible syntax or behavior available in interim-version releases rather than waiting for the next major version. Usage which is incompatible with SQL Server or which has behavior or results which are inconsistent with SQL Server can be corrected to match SQL Server in any new release--with mention in the Release Notes. Some compatibility corrections may still have to wait for a new major version.

Applications which rely on past VistaDB syntax features that have been deprecated as incompatible with standard T-SQL (as provided in SQL Server) may be able to preserve access to those features a bit longer with Legacy mode. Usage with behavior or results which are clearly faulty may still be corrected to better match the standard (SQL Server) in any new release, but syntax and behavior which are arguably useful and correct (by legacy design) should not be broken at least until a new major version--with mention in the Release Notes. However, such legacy syntax features might not be preserved past major version boundaries when standard-syntax alternatives are available or if maintenance becomes onerous.

Applications which want to preserve cross-compatibility options but which do not currently rely on cross-compatibility may wish to use Normal mode (the default) for releases and normal operation but then also test and develop in Strict mode to help identify areas of incompatibility in their usage which would fail to work as-is against SQL Server. This approach could allow a gradual migration towards cross-compatible usage as new features and missing cross-compatible syntax are added to VistaDB without requiring sudden reengineering just to incorporate an updated version of VistaDB.

Periodically checking the progress of changes in Strict mode is also advisable for most other Applications since changes made available in Strict mode may tend to be incorporated into Normal mode in the next major version.

Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also