tbf/TestBenchFramework/Forms/UpgradeSelectionDlg.cs

79 lines
2.6 KiB
C#

using System;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
using Results;
namespace TBF.Forms
{
public partial class UpgradeSelectionDlg : Form
{
int batchFrom;
int batchTo;
public UpgradeSelectionDlg()
{
InitializeComponent();
batchFrom = 1;
batchTo = Program.LocalSettings.BatchNr - 1;
}
private void upgradeDbButton_Click(object sender, EventArgs e)
{
string[] commands = new string[]
{
"ALTER TABLE `testrslt` ADD `ErrorFlagsMd` TINYINT( 4 ) NOT NULL DEFAULT '0' AFTER `ErrorMaster`, ADD `ErrorFlags` INT NOT NULL DEFAULT '0' AFTER `ErrorFlagsMd`, ADD `DiverterStart` FLOAT NOT NULL DEFAULT '0.001' AFTER `ErrorMaster`, ADD `DiverterEnd` FLOAT NOT NULL DEFAULT '0.001' AFTER `DiverterStart`;",
"ALTER TABLE `watermeter` ADD `ErrorFlags` INT NOT NULL DEFAULT '0' AFTER `QFall`;",
};
if (Common(new MySqlConnection(Results.DB.ConnectionString), commands))
{
upgradeDbButton.Enabled = false;
}
}
private void upgradeDb_216_217_Button_Click(object sender, EventArgs e)
{
string[] commands = new string[]
{
"ALTER TABLE `testrslt` ADD `DiverterStart` FLOAT NOT NULL DEFAULT '0.001' AFTER `ErrorMaster`, ADD `DiverterEnd` FLOAT NOT NULL DEFAULT '0.001' AFTER `DiverterStart`;",
"ALTER TABLE `watermeter` ADD `ErrorFlags` INT NOT NULL DEFAULT '0' AFTER `QFall`;",
};
if (Common(new MySqlConnection(Results.DB.ConnectionString), commands))
{
upgradeDb_216_217_Button.Enabled = false;
}
}
bool Common(MySqlConnection dbConn, string[] commands)
{
bool success = false;
try
{
dbConn.Open();
foreach (var cmdText in commands)
{
MySqlCommand cmd = dbConn.CreateCommand();
cmd.CommandText = cmdText;
cmd.ExecuteNonQuery();
}
MessageBox.Show("DB succesfully upgraded", "Confirmation", MessageBoxButtons.OK, MessageBoxIcon.Information);
success = true;
}
catch (Exception exc)
{
MessageBox.Show(string.Format("Exception {0}", exc.Message), "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
finally
{
dbConn.Close();
}
return success;
}
}
}