$password = "******";
$status = true;
// get handle
$dbhandle = new mysqli($dbhostname, $username, $password, $dbname);
if (false == $dbhandle) {
    $status = false;
    $logger->LogError("Unable to connect to database : {$dbhandle->error}");
}
// Create table
if (true == $status) {
    $status = CreateTable_Version($dbhandle);
    $logger->LogInfo("Create table status : {$status}");
}
// insert into table
if (true == $status) {
    $status = InsertInto_Version($dbhandle, $VersionTable_V0MajorVersion, $VersionTable_V0MinorVersion, $VersionTable_dbStateGood, $id);
    $logger->LogInfo("Insert into table status : {$status}");
}
// select and display record
if (true == $status) {
    $status = SelectByIdFrom_Version($dbhandle, $id, $MajorVersion, $MinorVersion, $dbState);
    $logger->LogInfo("Select into table status : {$status}");
}
// display record
if (true == $status) {
    $logger->LogInfo("Major - {$MajorVersion}, Minor - {$MinorVersion}, dbState - {$dbState}");
}
// select and display record
if (true == $status) {
    $status = SelectLastRowFrom_Version($dbhandle, $id, $MajorVersion, $MinorVersion, $dbState);
    $logger->LogInfo("Select into table status : {$status}");
$logger->LogInfo("Main - Open connection to db");
$dbhandle = new mysqli($dbhostname, $username, $password, $dbname);
if ($dbhandle->connect_error == true) {
    $logger->LogError("Unable to open connection to {$dbname} : {$dbhandle->error}");
    $status = false;
}
if (true == $status) {
    $logger->LogInfo("Checking if this is new deployment");
    if (IsExisting_Version($dbhandle) == false) {
        $logger->LogInfo("its a new deployment. Create table");
        $status = CreateTable_Version($dbhandle);
        if ($status == false) {
            $logger->LogInfo("Unable to create version table");
        } else {
            $logger->LogInfo("Insert row into table");
            $status = InsertInto_Version($dbhandle, $id, $CurrentMajorVersion, $CurrentMinorVersion, $dbStateGood);
            if (false == $status) {
                $logger->LogInfo("Unable to create row with version zero");
            }
        }
    }
}
if (true == $status) {
    $logger->LogInfo("checking the version, and if it is upgradable");
    $status = IsUpgradable($dbhandle);
    if (false == $status) {
        $logger->LogError("Unable to upgrade the database from current version");
    }
}
if (true == $status) {
    $logger->LogInfo("Moving database to Upgrading state");