Procédures stockées
riolé
-
ethernal -
ethernal -
salut à tous!!
g un problème qui commence à me courrir sur le haricot et je suis sur que c'est un truc tout bête!!
Voilà je veux exécuter un procédure stockée à partir d'un programme en vb.net:
ExecuteRequete("EXEC affecter_piece " + pylone_.GetId.ToString + "," + piece_.GetIdPiece.ToString + ",' " + Me.PickerDebut.Value.ToShortDateString +" ',0,0,0,0")
donc comme vous le voyais procédure à 7 paramètres que l'on retrouve ici:
CREATE PROCEDURE affecter_piece
@IdPylone INT,
@IdPiece INT,
@DateDebut DATETIME,
@Voie INT,
@Hauteur VARCHAR(2),
@Orientation VARCHAR(3),
@Decalage VARCHAR(3)
AS
BEGIN
DECLARE @SQL varchar(2000)
EXEC("Insert into est_affectee(IdPyloneA,IdPieceA,DateDebutA,VoieA,HauteurA,OrientationA,DecalageA) values('@IdPylone','@IdPiece','@DateDebut','@Voie','@Hauteur','@Orientation','@Decalage')")
end
go
Or le message d'erreur concerne la date il me di que je ne peux insérer un valeur varchar dans un champs datetime.
Pourtant ma variable DateDebut est bien un datetime???!!!
Quelqu'un voit la solution??
merci
g un problème qui commence à me courrir sur le haricot et je suis sur que c'est un truc tout bête!!
Voilà je veux exécuter un procédure stockée à partir d'un programme en vb.net:
ExecuteRequete("EXEC affecter_piece " + pylone_.GetId.ToString + "," + piece_.GetIdPiece.ToString + ",' " + Me.PickerDebut.Value.ToShortDateString +" ',0,0,0,0")
donc comme vous le voyais procédure à 7 paramètres que l'on retrouve ici:
CREATE PROCEDURE affecter_piece
@IdPylone INT,
@IdPiece INT,
@DateDebut DATETIME,
@Voie INT,
@Hauteur VARCHAR(2),
@Orientation VARCHAR(3),
@Decalage VARCHAR(3)
AS
BEGIN
DECLARE @SQL varchar(2000)
EXEC("Insert into est_affectee(IdPyloneA,IdPieceA,DateDebutA,VoieA,HauteurA,OrientationA,DecalageA) values('@IdPylone','@IdPiece','@DateDebut','@Voie','@Hauteur','@Orientation','@Decalage')")
end
go
Or le message d'erreur concerne la date il me di que je ne peux insérer un valeur varchar dans un champs datetime.
Pourtant ma variable DateDebut est bien un datetime???!!!
Quelqu'un voit la solution??
merci
1 réponse
Salut,
La solution me paraît évidente...(si je me trompe, jetez-moi des pierres)
Pourquoi passer Me.PickerDebut.Value.ToShortDateString en argument de ta procédure,
alors qu'il suffirait de passer Me.PickerDebut.Value...
En effet, la méthode ToShortDateString à un nom pourtant sans équivoque
=> elle renvoie une string à partir de ta date
Bonne chance pour la suite
La solution me paraît évidente...(si je me trompe, jetez-moi des pierres)
Pourquoi passer Me.PickerDebut.Value.ToShortDateString en argument de ta procédure,
alors qu'il suffirait de passer Me.PickerDebut.Value...
En effet, la méthode ToShortDateString à un nom pourtant sans équivoque
=> elle renvoie une string à partir de ta date
Bonne chance pour la suite