Avatar billede havmaage Juniormester
01. oktober 2009 - 21:22 Der er 4 kommentarer og
1 løsning

userdefined functions nybegynder

Hejsa

jeg prøver at lave en meget simpel function, der bare ligger nogle værdier sammen ( det skal de selvfølgelig ikke blive ved med) jeg skal lave en renteberegn, men lige nu er min udfordring faktisk mest hvordan bruger jeg min function.

når jeg kører nedenstående compiler den fint
men når jeg vil kalde den fra sql med

select kontonr, dato, Beregn_rente(saldo,dage,renteSats)
    from renteOpgorelse

så fejler den med

Msg 195, Level 15, State 10, Line 10
'Beregn_rente' is not a recognized built-in function name.

hvordan skal jeg anvende en userdefined function ?
bliver den ikke gemt ligesom en sp når man compiler den ?
er det et issue at kalde functionen fra en sp.





alter function Beregn_rente
    (@saldo int,@dage smallint,@renteSats smallint)
returns int
as
    begin
        declare @result int
        set @result= @saldo + @dage + @renteSats
        return @result    
    end
Avatar billede arne_v Ekspert
01. oktober 2009 - 21:31 #1
proev:

select kontonr, dato, dbo.Beregn_rente(saldo,dage,renteSats)
    from renteOpgorelse
Avatar billede havmaage Juniormester
01. oktober 2009 - 21:37 #2
ok jeg har da vist siddet og set problemer over det hele, da jeg prøvede dit forslag
virkede det bortset fra at det ene kollonne navn var forkert. ! jeg vil nu prøve at få functionen til at lave renteberegning i stedet for bare addere værdierene.
vil du lægge et svar. og tak for øjenåbneren :-)
Avatar billede arne_v Ekspert
01. oktober 2009 - 21:42 #3
svar
Avatar billede arne_v Ekspert
01. oktober 2009 - 21:45 #4
Husk at du i SQLServer 2005 & 2008 ogsaa kan skrive dine UDF'er i C# (eller VB.NET).

Hvis du skal lave noget meget programmatisk fremfor noget meget query'sk, saa kan C# (eller VB.NET) vaere noget fixere end T-SQL.
Avatar billede havmaage Juniormester
01. oktober 2009 - 21:49 #5
Ja jeg er klar over at det kan lade sig gøre, men er ikke helt nået dertil endnu. Men synes det kunne være skægt at prøve og lave en i c# selvom det også er helt nyt for mig.
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