ďťż
 
wykonywanie kodu sql przechowywanego w tabeli ďťż
 
wykonywanie kodu sql przechowywanego w tabeli
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

wykonywanie kodu sql przechowywanego w tabeli



Marcin - 17-10-2007 00:01
wykonywanie kodu sql przechowywanego w tabeli
  Witam,

mam dosc "dziwne" pytanie: czy jest mozliwosc (u mnie MySQL >=5, ale
interesuje mnie jak to jest ew. w innych bazach) wykonania kodu sql
zapisanego w tabeli, np. w kolumnie TEXT bez koniecznosci pobrania tego
pola i wykonania $db->execute('pobrany sql'), a jedynie w oparciu o
jakies polecenie wyslane do bazy danych?

Tlumacze o co chodzi. Bede przetwarzal duze ilosci rekordow na podstawie
zdefiniowanych regul (czyli de facto ludzko wyrazonych klauzul warunkow
where ;) . Same reguly beda przechowywane i znormalizowane w bazie i
beda sie rzadko zmienialy, wiec pewnie na podstawie zdefiniowanych regul
bede sobie cache'owal zapytanie w stylu: UPDATE ... WHERE (tu
przetworzona na SQL regula - pobrana z cache). I teraz pytanie: czy moge
wykonac takie update'y bez koniecznosci pobierania rekordu zcache'owanej
reguly z bazy i wyslania jej z powrotem?

wszelkie pomysly na optymalizacje powyzszego problemu mile widziane :)
jak o to pytac po angielsku? ;) bo google mi nic nie powiedzial...

dzieki za pomoc,
pozdr, m.





TButton - 18-10-2007 00:03

  >
> Tlumacze o co chodzi. Bede przetwarzal duze ilosci rekordow na podstawie
> zdefiniowanych regul (czyli de facto ludzko wyrazonych klauzul warunkow
> where ;) . Same reguly beda przechowywane i znormalizowane w bazie i
> beda sie rzadko zmienialy, wiec pewnie na podstawie zdefiniowanych regul
> bede sobie cache'owal zapytanie w stylu: UPDATE ... WHERE (tu
> przetworzona na SQL regula - pobrana z cache). I teraz pytanie: czy moge
> wykonac takie update'y bez koniecznosci pobierania rekordu zcache'owanej
> reguly z bazy i wyslania jej z powrotem?
Procedury składowane mogą pomóc ale nie wiem na jakim są poziomiew Mysql.

Zawsze mnie denerwuje jak ktoś sie pyta na grupie dlaczego chce zrobic
coś tak a nie w inny sposób, ale niestety MUSZE sie teraz zapytać Ciebie.

Dlaczego po prostu nie pociągniesz REGUŁ i nie zbudujesz SQL-a na ich
podstawie ?




Filip Rembia kowski - 18-10-2007 00:03

  On 16 Pa , 22:01, Marcin <md23...@sgh.waw.pl> wrote:
> Witam,
>
> mam dosc "dziwne" pytanie: czy jest mozliwosc (u mnie MySQL >=5, ale
> interesuje mnie jak to jest ew. w innych bazach) wykonania kodu sql
> zapisanego w tabeli, np. w kolumnie TEXT bez koniecznosci pobrania tego
> pola i wykonania $db->execute('pobrany sql'), a jedynie w oparciu o
> jakies polecenie wyslane do bazy danych?
>
> Tlumacze o co chodzi. Bede przetwarzal duze ilosci rekordow na podstawie
> zdefiniowanych regul (czyli de facto ludzko wyrazonych klauzul warunkow
> where ;) . Same reguly beda przechowywane i znormalizowane w bazie i
> beda sie rzadko zmienialy, wiec pewnie na podstawie zdefiniowanych regul
> bede sobie cache'owal zapytanie w stylu: UPDATE ... WHERE (tu
> przetworzona na SQL regula - pobrana z cache). I teraz pytanie: czy moge
> wykonac takie update'y bez koniecznosci pobierania rekordu zcache'owanej
> reguly z bazy i wyslania jej z powrotem?
>
> wszelkie pomysly na optymalizacje powyzszego problemu mile widziane :)
> jak o to pytac po angielsku? ;) bo google mi nic nie powiedzial...
>

w standardzie to si mówi o EXECUTE IMMEDIATE i wi kszo baz danych
to ma.
kwestia obudowania procedur sk adowan .

w postgresie (PL/PgSQL) si da, u ywaj c funkcji u ytkownika, zobacz
np. http://www.depesz.com/index.php/2007...adawanie-praw/

w Oracle te , co w PL/SQL bardzo podobnego.

w MSSQL te , chocia troch bardziej topornie ale idea identyczna.
b dziesz musia u y kursora.




Marcin - 18-10-2007 00:03

  TButton pisze:
> Dlaczego po prostu nie pociągniesz REGUŁ i nie zbudujesz SQL-a na ich
> podstawie ?

Dzieki za odpowiedz.

Wlasnie tak zrobie - na podstawie regul z bazy utworze SQLa
automatycznie. Tylko ze reguly beda sie zmieniac rzadko, a ten SQL
bedzie wykonywany z crona dosc czesto, wiec chce tego wygenerowanego
SQLa sobie zcache'owac (i zrobic update gdy zmieni sie dana regula).
Moze faktycznie niewarta skorka wyprawki, ale w zaleznosci od ilosci
regul oszczednosc moze byc zauwazalna.

poszukam wiecej o opcji execute immediate

pozdr, m.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    jak to =?ISO-8859-2?Q?zrobi=E6=2E=2E=2E=3F_TSQL_sql_server?==?ISO-8859-2?Q?_?= Jak =?windows-1250?Q?pobra=E6_szacowan=B9_wielko=9C=E6_zbiory_wy nikowego_w_MS?==?windows-1250?Q?_SQL_2005=3F?= =?iso-8859-2?Q?=5BMS_SQL=5D_Czy_mo=BFna_wywo=B3a=E6_funkcje_t ylko_raz_dla?==?iso-8859-2?Q?_ca=B3ego_zbioru_=BCr=F3d=B3owego=3F?= [MSSQL] =?ISO-8859-2?Q?zgodno=B6ci_z_licencjami_Microsoft_?==?ISO-8859-2?Q?SQL_Server?= =?ISO-8859-2?Q?k=B3opot_z_uruchomieniem_MY_SQL_dla_C?==?ISO-8859-2?Q?MS_i_CRM_na_Fedora_Core_3?= [MSSQL] ACCESS - SQL =?ISO-8859-2?Q?B=B3ad_w_konwersji_lic?==?ISO-8859-2?Q?zb?= =?iso-8859-2?Q?=5Bmssql=5D_Zapytania_rekurencyjne__-_czy_sk=B3adnia_sql?==?iso-8859-2?Q?_co=B6_takiego_przewiduje_=3F?= [Oracle PL/SQL] Cursor i zapis =?ISO-8859-2?Q?rekord=F3w_do_?==?ISO-8859-2?Q?kolejnych_plik=F3w?= =?iso-8859-2?Q?=5BMySQL=5D_Co_minimalnie_potrzebne_zeby_mie=E 6_klienta_My?==?iso-8859-2?Q?SQL_na_Linuxie=3F?= [newbie] MS SQL - praca =?ISO-8859-2?Q?jednocze=B6nie_na_2_?==?ISO-8859-2?Q?bazach_=28linkowanie_=3F=29?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • felgiuzywane.xlx.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com