[ Jpeca @ 21.10.2005. 08:29 ] @
U Tabeli A imam kolonu u kojoj se čuva SQL upit kao string. Upit Ovaj upit mogu da pozovem preko sp_executesql, ali mi je potrebno da ga pozovem iz funkije koja bi vratila samo jedan podatak - određeni red(parametar) i kolonu (unapred definisano). Problem je što funkcija ne prihvata poziv store procedure nego samo extended store procedure - da li postoji neka xp store procedura koja izvršava upit ili neko drugo rešenje da se dinamički kreiran upit izvrši unutar funkcije?
[ jablan @ 21.10.2005. 09:01 ] @
Zašto ti je neophodno da to bude baš UDF, a ne recimo SP?
[ Jpeca @ 21.10.2005. 09:27 ] @
Rezultat te funkcije koristi view, tj. view poziva tu funkciju
[ jablan @ 21.10.2005. 09:59 ] @
Žao mi je što ti nisam od neke pomoći, ali mislim da UDF nisu smišljene za tu namenu, i da treba da razmotriš neko drugo rešenje za taj view (a meni sve miriše na loše isprojektovanu bazu). Odnosno, ti želiš da iz UDF izvršiš proizvoljno parče SQL koje ne mora, ali može da radi svašta nešto postojećim podacima u bazi...
Citat:
Modifications to database tables, operations on cursors that are not local to the function, sending e-mail, attempting a catalog modification, and generating a result set that is returned to the user are examples of actions that cannot be performed in a function.

Extended stored procedure mislim da treba da zaboraviš...

Možda će se naći i neko sa boljim predlogom.

[Ovu poruku je menjao jablan dana 21.10.2005. u 11:04 GMT+1]
[ Jpeca @ 22.10.2005. 12:33 ] @
Nisam uspeo da to uradim kako sam nameravo, pa sam to uradio okolo-naokolo. Rezultat koji bi trebalo da vrati funkcija čuvam kao posebnu kolonu u pogodnoj tabeli. Ta kolona se popunjava preko store procedure koja se trigeruje na promenu podataka. Tako da umesto da zovem funkciju pozivam tu kolonu.
Hvala na trudu.