2011. november 24., csütörtök

MySQL Workbench & C++ Redistributable

Elsődlegesen a véleményem a címben említett programról, hogy hasznos, meg tudja könnyíteni az adatbázis tervezést, és magát a fejlesztési folyamatot, a dolgok átlátását.

DE!!
Időnként akad néhány gebasz! Néhányba nekem is bele sikerült futnom. Egy darabig kerestem rájuk a megoldást, majd ismét feladtam.

Környezet:
  • Windows 7 (64 bit) /* Megj.: Hamarosan le lesz váltva Linux-ra de még válogatok és gondolkozom a dolgon. De akkor már csak Virtualbox-ba lesz száműzva a kis drága! */
  • MySQL Workbench 5.2.35 csomagolt változat (mysql-workbench-gpl-5.2.35-win32-noinstall.zip)

Az eddig tapasztalt problémák
  • Splash képernyő. Program betöltés során többször is hibaüzenetbe fut a program
    Megj.: Az 5.2.33-as verziónál előfordult, de ott 3 hiba jelentkezett. Ettől független a program működött, illetve működő képes volt
  • Bizonyos szituációk után elmentett adatbázis projekt fájl visszatöltésekor hibás fájlra panaszkodott.
    Ilyen szituáció volt pl.:
    • Egy projekt fájl megnyitása a programban, ER modell betöltése. ER modell van nyitva. Majd a programot magára hagyjuk, mert máshol is van dolgunk. Ablakok váltogatása böngésző, fejlesztő környezet, git között. Vagyis valamilyen fejlesztés zajlik.
    • Egyszer csak bele kell nyúlni az adatbázis projektbe! Visszalépve azt tapasztalható, hogy az ER modell fájlt nem lehet görgetni, pozicionálni!
    • A Workbench alkalmazás mentetlen módosításokkal lett magára hagyva
    • Semmi gond! (Gondolom :( ) Projekt elment, program bezár, program ismét megnyit, projekt fájl betölt! HOPP!! Hibaüzenet, hogy nem stimmel valami a projekt fájlban
Egy kezemen nem tudnám megszámolni, hogy hányszor futottam neki az internetes keresésnek, hogy felkutassam a problémát! Már nem is emlékszem (valahogy nem is akarok :) ), hogyan jutottam el a következő megoldásig!

MEGOLDÁS:
A program futásához erősen javasolt a következő telepítése:
Microsoft Visual C++ x86 Redistributable  ( jelen pillanatban a legújabb verzió: 10.0.30319)
32 bites változat kell, mert maga a program is 32 bites.

Én szerencsétlenül hetekkel korábban telepítettem a 64 bites változatot, amit nem is néztem, hogy több féle is van belőle, ezért nem is gondoltam, hogy itt lehetne a gond. De valahogy a szemem elé keveredett egy Workbench hibajegy az internetről, amiben szó volt a 32 bites változatról is.

Feltelepítve az előbbi programot már nem kapok hibaüzenetet a splash screen alatt. A modell görgetési probléma még mindig fenn áll, de a mentetlen projekt mentés utáni megnyitása már nem gond!

2011. november 8., kedd

(Multiline) comment regex PHP preg-re

http://ostermiller.org/findcomment.html
A fenti oldalon egy jól össszerakott regex van.
(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|(//.*)

Hogy PHP preg függvényei is bevegyék, cserélni kell a '/' jeleket '\/' kvótázott változatra.
Tehát comment törlés esetén pl.:
$str = preg_replace('/(\/\*([^*]|[\r\n]|(\*+([^*\/]|[\r\n])))*\*+\/)|(\/\/.*)/', '', $str);

A karaktercserékre akkor van szükség, ha ragaszkodunk a PCRE '/' határoló karaktereihez.
Mert ha a határolók között megadott kifejezés tartalmazza a határoló karaktert, akkor azt kvótázni kell.

Ha más elválasztót választunk, akkor:
$str = preg_replace('#(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|(//.*)#', '', $str);