mirror of
https://github.com/mRemoteNG/mRemoteNG.git
synced 2026-02-26 12:08:37 +08:00
42 lines
1.4 KiB
C#
42 lines
1.4 KiB
C#
using mRemoteNG.App;
|
|
using mRemoteNG.Config.DatabaseConnectors;
|
|
using mRemoteNG.Messages;
|
|
using System;
|
|
|
|
namespace mRemoteNG.Config.Serializers.Versioning
|
|
{
|
|
public class SqlVersion26To27Upgrader : IVersionUpgrader
|
|
{
|
|
private readonly IDatabaseConnector _databaseConnector;
|
|
|
|
public SqlVersion26To27Upgrader(IDatabaseConnector databaseConnector)
|
|
{
|
|
_databaseConnector = databaseConnector ?? throw new ArgumentNullException(nameof(databaseConnector));
|
|
}
|
|
|
|
public bool CanUpgrade(Version currentVersion)
|
|
{
|
|
return currentVersion.CompareTo(new Version(2, 6)) == 0;
|
|
}
|
|
|
|
public Version Upgrade()
|
|
{
|
|
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg,
|
|
"Upgrading database from version 2.6 to version 2.7.");
|
|
const string sqlText = @"
|
|
ALTER TABLE tblCons
|
|
ADD RedirectClipboard bit NOT NULL DEFAULT 0,
|
|
InheritRedirectClipboard bit NOT NULL DEFAULT 0,
|
|
VmId varchar NOT NULL DEFAULT 0,
|
|
UseVmId bit NOT NULL DEFAULT 0,
|
|
InheritVmId bit NOT NULL DEFAULT 0,
|
|
InheritUseVmId bit NOT NULL DEFAULT 0;
|
|
UPDATE tblRoot
|
|
SET ConfVersion='2.7'";
|
|
var dbCommand = _databaseConnector.DbCommand(sqlText);
|
|
dbCommand.ExecuteNonQuery();
|
|
|
|
return new Version(2, 7);
|
|
}
|
|
}
|
|
} |