créer la fonction doit être la seule instruction dans le lot

J'obtiens cette erreur à partir de la fonction:

CREATE FUNCTION getLavel(@id int ,@lavel char)
RETURNS date
BEGIN
 DECLARE @date date
    select @date = (select authorization_date from Authorized WHERE diver_number = @id and @lavel =level_name)
    return @date
END
GO

Quelle peut être la raison?

Té beaucoup.

Quelle est l'erreur que vous obtenez?
Parce que vous coincé tout sur une seule ligne. Pourquoi êtes-vous en utilisant une sous-requête pour remplir une variable? Tout cela ressemble à un bon candidat pour un intvf au lieu d'une fonction scalaire.
Est votre déclaration incluse avec les autres dans un script? Si oui, la déclaration devant votre fonction a besoin d'un GO à la fin.

OriginalL'auteur user3885474 | 2014-07-28