Jūs esate

SQL funkcijų vykdymas

Su tokia nedidele problemėle susidūriau, bet išsprendžiau. Kad žmonės per daug nesikankintų, sugrūsiu ir čia sprendimą. Kad būtų aišku, viskas vykdoma ant Microsof SQL Server Management Studio (geras daiktas, jei naudojate SQL serverį, tuojau pat pumpuokitės iš Microsoft tinklalapių). Turime baisiai gerą ir naudingą SQL funkciją: ALTER FUNCTION [dbo].[GetUserID] ( -- Add the parameters for the function here @Name nvarchar(250) ) RETURNS nvarchar(250) AS BEGIN -- Declare the return variable here DECLARE @Result nvarchar(250) -- Add the T-SQL statements to compute the return value here SELECT @Result=UserID FROM Users WHERE UserName=@Name -- Return the result of the function RETURN @Result END Kaip matome, šis gėris gražina nvarchar(250). Mums reikia kaip nors įvykdyti šį programavimo minties stebuklą. Tad keverzojame: SELECT dbo.GetUserID('Petras') Kaip atsakymą gausime: (No column name) 17 Aišku, skaičius bus kitas :D Bet gali nepatikti tai, kad nėra stulpelio pavadinimo. Tad "paturbiname" užklausą: SELECT dbo.GetUserID('Petras') AS UserID Gauname: UserID 17

Komentuoti