Avatar billede lionhcfs Nybegynder
15. oktober 2007 - 16:22 Der er 7 kommentarer og
1 løsning

Stored Function: kalde en Forespørgsel i en variabel

Hey alle

Jeg prøver at lave en stored function der kan tælle antal records i en forespørgsel..

Men da den skal være dynamisk og skal kunne tælle records i alle mulige SQL-forespørgsler vil jeg kalde min SF med f.x.:

SELECT f_CountRows('SELECT Count(ID) FROM books');

DVS funktionen kaldes med en forespørgsel i en variabel.

Kan det lade sig gøre at kalde / execute en variabel ?

(her er varNewSQL = "SELECT Count(ID) FROM books")

SET tmpCNT = (varNewSQL);

(denne metode skal også gerne bruges til andre ting, hvor der skal laves dynamiske SQL-sætninger, så det er mest hvordan det gøres)
gode forslag modtages gerne..
Avatar billede arne_v Ekspert
15. oktober 2007 - 16:25 #1
Du kan EXEC en streng.
Avatar billede arne_v Ekspert
15. oktober 2007 - 16:25 #2
Bruger du 2000 eller 2005 ?
Avatar billede lionhcfs Nybegynder
15. oktober 2007 - 16:26 #3
glemte vidst lige at nævne at der er tale om MySQL V5.0 og ikke 5.1 :-)
Avatar billede lionhcfs Nybegynder
15. oktober 2007 - 16:30 #4
arne_v:
#1: kan du give et eksempel ? .. jeg er ret ny indenfor SP / SF
#2: 2000 eller 2005 af hvad ? :-o
Avatar billede arne_v Ekspert
15. oktober 2007 - 16:50 #5
Jeg sidder og sover.

Jeg taenkte SQLServer ikke MySQL.
Avatar billede arne_v Ekspert
15. oktober 2007 - 16:55 #6
Avatar billede lionhcfs Nybegynder
15. oktober 2007 - 21:17 #7
det ser ud til at virke i en SP.. men prepare understøttes åbenbar ikke i en function.. ej heller ved SP kald fra SF :-(... men tak for hjælpen.. stik et svar så får du point
Avatar billede arne_v Ekspert
16. oktober 2007 - 02:23 #8
Suk.

Du må vel bruge en sub select fremfor en function så.

Svar.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester