PmADO reconnect

Dobrý den,
připojuji se k databázi pomocí objektu PmADO. Konkrétně se jedná o MySQL.
Potřebuji vyřešit situaci, kdy je databáze nedostupná. Resp. situaci, kdy při zapnutí PRM dojde k připojení DB, ale ta se za nějaký čas vypne (např. z důvodu údržby). Následně opět za nějaký časový úsek naskočí. Je požadováno pokračovat dále.
Zjistil jsem, že DbIsOpen() nedokáže reagovat na aktuální situaci. Správnou hodnotu zobrazí při prvotním spuštění (mám zatrženo připojovat při spuštění aplikace). Viz. stavy:
1. Start PRM, zapnutá DB => DbIsOpen() == 1
2. Start PRM, vypnutá DB => DbIsOpen() == 0
3. Start PRM, zapnutá DB, následné vypnutí DB => DbIsOpen() == 1
Poradíte mi prosím, jak udělat správně reconnect k DB?
Mimo jiné právě díky nesrpávnému vyhodnocení připojení k DB mě aplikace spadne na dotaz do DB.
Předpokládal jsem, že si vystačím s tímto:
Děkuji.
připojuji se k databázi pomocí objektu PmADO. Konkrétně se jedná o MySQL.
Potřebuji vyřešit situaci, kdy je databáze nedostupná. Resp. situaci, kdy při zapnutí PRM dojde k připojení DB, ale ta se za nějaký čas vypne (např. z důvodu údržby). Následně opět za nějaký časový úsek naskočí. Je požadováno pokračovat dále.
Zjistil jsem, že DbIsOpen() nedokáže reagovat na aktuální situaci. Správnou hodnotu zobrazí při prvotním spuštění (mám zatrženo připojovat při spuštění aplikace). Viz. stavy:
1. Start PRM, zapnutá DB => DbIsOpen() == 1
2. Start PRM, vypnutá DB => DbIsOpen() == 0
3. Start PRM, zapnutá DB, následné vypnutí DB => DbIsOpen() == 1
Poradíte mi prosím, jak udělat správně reconnect k DB?
Mimo jiné právě díky nesrpávnému vyhodnocení připojení k DB mě aplikace spadne na dotaz do DB.
Předpokládal jsem, že si vystačím s tímto:
- Code: Select all
//// test připojenosti DB MySQL + případný connect
if (MySQL.DbIsOpen() == 0){
MySQL_ok = false;
var b = MySQL_ok.DbOpen;
} else {
MySQL_ok = true;
}
Děkuji.