[ Ilija Studen @ 03.06.2005. 09:35 ] @
| Situacija je dobro znana: skripta treba da radi na više servera, različitim konfiguracijama bla bla i iz tog razloa sve tabele u bazi imaju prefix koji se definiše pri instalaciji skripte.
Da li postoji negde zgodna funkcija (ili klasa) koja ubacuje prefix imenima tabela u već formiran SQL?
Nešto tipa add_prefix("SELECT * FROM `somewhere` WHERE `something` = 'other'")
Ovo nije teško napraviti, ali problem je nastao kada se ima JOIN i kada se u upitu pojavljuje više tabela. Toliko dobar sa regexpovima nisam :(
Ima li iko nešto zgodno za rešavanje ovog problema, ideju ili nešto što bi moglo da se prilagodi? |
[ jablan @ 03.06.2005. 09:46 ] @
A ne dolazi u obzir da menjaš SQL-ove? Tj. da dodaš po jedan ${prefix} pre imena svake tabele.
[ Ilija Studen @ 03.06.2005. 10:07 ] @
Imam već gotovu skriptu koju čini relaciona baza sa nekih 20 tabela pa bih hteo da prođem bez toga da menjam svaki upit. Naravno da opcija ručnog upisivanja prefixa uvek postoji, a ako se bez nje može što da ne :)
A mislim da je problem prilično zanimljiv i da većini treba nešto slično...
[ SmilieBG @ 03.06.2005. 16:27 ] @
zato sledeci put definisi u jednom fajlu imena tabela, a u svakom upitu koristi $tabela_1, $tabela_2 i sl. Na taj nacin, samo u jednom fajlu promenis naziv tabele i gotovo :)
Konkretno u tvom slucaju, mi ne pada nista na pamet... :(
Poz,
Sale
[ jablan @ 03.06.2005. 16:34 ] @
Citat:
Imam već gotovu skriptu koju čini relaciona baza sa nekih 20 tabela pa bih hteo da prođem bez toga da menjam svaki upit.
Pa svejedno ti je glupo uvek kad ti zatreba query da ga provlačiš kroz regex koji će da menja imena tabela, umesto da ubaciš varijabilne prefikse u kverije. Sa druge strane, ipak regularni izrazi ne pašu baš svud... Bilo bi ipak malo preambiciozno kodirati sintaksu SQL-a u regularnom izrazu!
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.