/**
 * Prepare query and execute it
 * 
 * @param string $sTab = table
 * @param array $aData = data to store
 * @param array $aUpdate conditions
 * @param boolean $gDebug on/off sql statement output
 * 
 * @return mixed $result FALSE or affected rows
 */
function libDbExcuteQuery($sType, $sTab, $aData, $aUpdate = NULL, $gDebug = FALSE)
{
    if (($db = libSysGetDb()) === FALSE) {
        return FALSE;
    }
    $sqlquery = $db->getPreparedQuery($sType, $sTab, $aData, $aUpdate);
    $aMerge = array_merge(is_array($aData) ? $aData : array(), is_array($aUpdate) ? $aUpdate : array());
    if ($gDebug === TRUE) {
        $sqlStatement = Database::dumpStatement($sqlquery, $aMerge);
        libSysPrintStatement($sqlStatement);
    }
    return $db->executeQuery($sqlquery, $aMerge);
}