Appel des fonctions définies SQL dans C #
Interroger une base de données à l'aide de fonctions définies par SQL à partir d'un C # Code spécifique lors de l'accès à des fonctions définies par l'utilisateur (UDFS) dans un SQL Query. Voici comment vous pouvez appeler une fonction scalar t-sql nommée "tCupom" à partir de votre code C #:
sql function:
create function TCupom (@cupom int) returns float as begin declare @Tcu float; select @Tcu = sum (total) from alteraca2 where pedido = @cupom if (@tcu is null) set @tcu = 0; return @tcu; end
C # code:
Erreur dans le code original:
Le code C # original a fait deux erreurs:
CODE CORRÉCÉ:
Le code corrigé ci-dessous démontre comment appeler correctement le "TCupom" Fonction " cupom)
{
Float Saida;
SQLDATAADAPTER DA2 = NOUVEAU SQLDATAADAPTER ();
if (conex1.state == ConnectionState.Closed)
{
conex1.open ();
}
Sqlcommand totalf = new sqlcommand ("select dbo.tcupom (@code)", conex1);
SQLParameter Code1 = new SqlParameter ("@ code", sqldbtype.int);
Code1.Value = Cupom;
Saida = totalf.executescalar ();
Retour Saida;
}
public void TotalCupom(int cupom) { float SAIDA; SqlDataAdapter da2 = new SqlDataAdapter(); if (conex1.State == ConnectionState.Closed) { conex1.Open(); } SqlCommand Totalf = new SqlCommand("SELECT dbo.Tcupom(@code)", conex1); SqlParameter code1 = new SqlParameter("@code", SqlDbType.Int); code1.Value = cupom; SAIDA = Totalf.ExecuteScalar(); return SAIDA; }Explication:
L'objet SqlCommand est construit avec une instruction de requête SQL qui inclut le nom entièrement qualifié de l'UDF, DBO.TCUPOM. La valeur est définie sur le paramètre Cupom transmis à la méthode C #.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3