SqlException (0x80131904) Procedure stocké

_ste2a Messages postés 4 Date d'inscription lundi 11 juillet 2005 Statut Membre Dernière intervention 14 mai 2008 - 28 avril 2008 à 13:11
_ste2a Messages postés 4 Date d'inscription lundi 11 juillet 2005 Statut Membre Dernière intervention 14 mai 2008 - 14 mai 2008 à 14:00
Bonjour à tous,

J'ai un souci pour récuperer le parametre BodyText dans une procédure stockées avec le controle FCKeditor :

aspx :
<FCKeditorV2:FCKeditor
ID="FCKeditor1"
runat="server"
Value='<%#Bind ("BodyText") %>
'
BasePath="~/admin/fckeditor/"
Height="600px"></FCKeditorV2:FCKeditor>

vb :
command.Parameters.Add(
"@BodyText", SqlDbType.Text).Value = BodyText

Procedure :
ALTER PROCEDURE

proc_UpdateNouvellesItem @ItemID
int, @CategorieID
int, @Titre
varchar (128), @SousTitre
varchar (512), @BodyText
text AS

UPDATE [Nouvelles]
SET [CategorieID]=@CategorieID, [Titre]=@Titre, [SousTitre]=@SousTitre, [BodyText]=@BodyText
WHERE [ItemID]=@ItemID

Sans le controle FCKeditor cela fonctionne tres bien
Merci de votre aide
Salutations,

4 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
1 mai 2008 à 16:49
Salut,

Sans le reste du message d'erreur, ça risque d'être difficile...
[Nouvelles].[BodyText] n'est pas nullable ?

/*
coq
MVP Visual C#
CoqBlog
*/
0
_ste2a Messages postés 4 Date d'inscription lundi 11 juillet 2005 Statut Membre Dernière intervention 14 mai 2008
2 mai 2008 à 16:13
Bonjour,

l'erreur :
SqlException (0x80131904): Procedure or function 'proc_UpdateNouvellesItem' expects parameter '@BodyText', which was not supplied.
------
Public
Shared
Sub UpdateNouvellesItem(
ByVal ItemID
As
Integer,
ByVal CategorieID
As
Integer,
ByVal Titre
As
String,
ByVal SousTitre
As
String,
ByVal BodyText
As
String)

Using connection
As
New SqlConnection(WebConfigurationManager.ConnectionStrings(
"TimesConnectionString").ConnectionString)

Dim command
As
New SqlCommand(
"proc_UpdateNouvellesItem", connection)

command.CommandType = CommandType.StoredProcedure
command.Parameters.Add(
"ItemID", SqlDbType.Int).Value = ItemID
command.Parameters.Add(
"@CategorieID", SqlDbType.Int).Value = CategorieID
command.Parameters.Add(
"@Titre", SqlDbType.VarChar, 128).Value = Titre
command.Parameters.Add(
"@Soustitre", SqlDbType.VarChar, 512).Value = SousTitre
command.Parameters.Add(
"@BodyText", SqlDbType.Text).Value = BodyText
Try

connection.Open()
command.ExecuteNonQuery()

Finally

If connection
IsNot
Nothing
Thenconnection.Close()

End
If

End
Try

End
Using

End
Sub
Merci de l'intéret pour mon erreur
Salutations,
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
2 mai 2008 à 23:50
Ha bah voilà c'est déjà beaucoup plus clair.
A vu de nez je dirais qu'au moment de l'appel BodyText est une référence nulle, ce qui entraine l'absence du paramètre.
Quand on parle paramètre SQL, on ne passe pas la valeur NULL avec une référence nulle mais avec DbNull.Value.

/*
coq
MVP Visual C#
CoqBlog
*/
0
_ste2a Messages postés 4 Date d'inscription lundi 11 juillet 2005 Statut Membre Dernière intervention 14 mai 2008
14 mai 2008 à 14:00
Bonjour Coq,
merci de ton aide
Je reviens à la charge STP je n'arrive pas à le metrre en place le DBnull.value
Pourais-tu m'aider ?

command.Parameters.Add(

"@BodyText", SqlDbType.Text).Value =
String.IsNullOrEmpty(BodyText)

merci
0
Rejoignez-nous