begin process at 2010 02 10 15:17:02
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

Base de données

 > 

SQL Server

 > 

donne la valeur <NULL> à un champs de type bit lors d'un update


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

donne la valeur <NULL> à un champs de type bit lors d'un update

jeudi 23 novembre 2006 à 13:14:01 | donne la valeur <NULL> à un champs de type bit lors d'un update

robbielove

bonjour,

je voudrais updater un champs de type bit dans une table de ma base de données (SQL Server 2000) avec la valeur <NULL>
pour cela j'ai coché la case Allow Nulls lors de la construction de la table et mis "(null)" dans la propriété Default Value de mon champs de type bit.

Pourtant dans ma méthode d'update je spécifie
SqlBoolean.Null et au lieu d'inscrire la valeur <NULL>, mon champs prend pour valeur 0.

que faire ?

Merci de votre aide
jeudi 23 novembre 2006 à 19:20:18 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

jesusonline

Membre Club Administrateur CodeS-SourceS
Bonjour,

peux tu nous montrer ton code ? car tout semble bon.


Cyril - MVS - MCP
vendredi 24 novembre 2006 à 08:58:29 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

robbielove

ma classe d'accès:

public

static bool Update(int id, SqlBoolean includedMemoryCard)
{
   DataClasses.Parameters.spU_CameraDetails param = new DataClasses.Parameters.spU_CameraDetails
();
   DataClasses.StoredProcedures.spU_CameraDetails  sp = new DataClasses.StoredProcedures.spU_CameraDetails();

   param.SetUpConnection( ConfigurationManager.ConnectionStrings["ConnectionString" ].ToString());

   param.Param_ID = idReflex;

   if (!includedMemoryCard.IsNull) 
      param.Param_IncludedMemoryCard = includedMemoryCard;
   else
 
      param.Param_IncludedMemoryCard_UseDefaultValue();

   sp.Execute( ref param);
}

ma table:

vendredi 24 novembre 2006 à 10:18:14 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

jesusonline

Membre Club Administrateur CodeS-SourceS
il me semble qu'on fait un truc du genre normalement

command.paramaeters.Add("@toto", DBNull.Value);

la je ne vois pas le problème car je ne connais pas le fonctionnement de tes types métiers :-/


Cyril - MVS - MCP
vendredi 24 novembre 2006 à 10:26:27 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

robbielove

en fait j'utilise Olymars pour générer mes procédures stockées et mes classes d'accèes.

pour adapter le DBNull.Value j'ai donc écrit:

param.Param_IncludedMemoryCard =

DBNull.Value;

mais ERROR : "Cannot implicitly convert type 'System.DBNull' to 'System.Data.SqlTypes.SqlBoolean' "

j'ai donc remplacé par SqlBoolean.Null mais rein n'y fait, il enregistre 0!

La solution réside peut-être dans la construction manuelle de ma méthode d'upadte pour réussir à enregistrer DBNull.Value!?
vendredi 24 novembre 2006 à 10:29:12 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

jesusonline

Membre Club Administrateur CodeS-SourceS
Je connais pas OlyMars donc je sais pas comment il fonctionne :( Regarde avec SQL profiler p our voir quel est la requete envoyé à SQL ca devrait aider :-/

La solution de passer par la construction manuelle est une vraie fausse solution, car c'est pas trés propre ... :-s


Cyril - MVS - MCP
vendredi 24 novembre 2006 à 10:42:23 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

robbielove

Je viens de découvrir grâce à toi SQL Profiler (merci!)
Dans l'historique, la procédure est au statut "RPC:Completed" et dans le Textdata
... , @IncludedMemoryCard = NULL, @ConsiderNull_IncludedMemoryCard = default, ...
vendredi 24 novembre 2006 à 10:44:56 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

robbielove

j'ajouterai que dans la colonne Writes la valeur est à 0.... donc forcément... ceci dit je ne vois toujours pas comment résoudre le pb :s
vendredi 24 novembre 2006 à 10:49:19 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

jesusonline

Membre Club Administrateur CodeS-SourceS
Tu n'es pas dans un context transactionnel ? qui aurait fait un rollback ?

c'est quoi exactement le code SQL généré ?


Cyril - MVS - MCP
vendredi 24 novembre 2006 à 10:54:16 | Re : donne la valeur <NULL> à un champs de type bit lors d'un update

robbielove

exec spU_CameraDetails @ID = 8, @ID_Camera = 1, @ConsiderNull_ID_Camera = default, @IncludedMemoryCard = NULL, @ConsiderNull_IncludedMemoryCard = default, @InternalMemory = 1, @ConsiderNull_InternalMemory = default, @VideoMode = 0, @ConsiderNull_VideoMode = default, @Webcam = 1, @ConsiderNull_Webcam = default, @Weight = 0, @ConsiderNull_Weight = default, @Dimensions = '1,23 x 4,56 x 78,9', @ConsiderNull_Dimensions = default, @Resolution = 0.000000000000000e+000, @ConsiderNull_Resolution = default

 


1 2

Cette discussion est classée dans : type, valeur, champs, update, bit


Répondre à ce message

Sujets en rapport avec ce message

Aficher un champs d'une table ACCESS de type Objet OLE [ par usef80 ] Bonjour,J'ai un problème: Dans ma base de données ACCESS, j'ai une table employé dont les champs sont: id_employe, nom, département adresse et photo. valeur nulle [ par manutu ] J ai un petit problemeje développe en ASP avec une base de donnée sql serverPour ce que je suis en train de faire, je dois mettre à jour des champs da Pb de conversion.... [ par Tribute2U ] Bonjour, voilà mon problème :j'utilise ASP avec une base de donnée Access.Lorsqu'un utilisateur se connecte (après s'être identifié), je met des infor lire un enreg contenant des champs vides [ par dedzep ] bonjourj'ai dans ma base de donnée des champs qui ne sont pas forcement renseignés.Mais quand je veux lire ce type d'enregistrement j'ai un message d' Datagrid en édition / valeur par defaut d'un champ [ par cabbry ] Bonjour, j'ai un datagrid lorsque je me met en édition, certains champs sont vide si ils n'ont pas de valeur. Au lieu d'être vide, je voudrais que conversion text-numerique [ par marhoa ] Je voudrais faire un test entre un valeur de type numérique d'une de mes tables et une valeur stockée dans un textbox de ma page asp. J'ai vu dans un modification de la valeur d'un champs Input Hidden en c# [ par gama71 ] Salut, j'essaie d'intégrer paypal a mon site, après avoir généré le code du bouton et l'avoir collé dans ma page en html, je voudrais modifier les cha SQL Server 2005 => Update [ par Pierrrot ] Bonjour,J'ai un petit obstacle qui m'enui un peu,J'aimerais faire ceci ;1) L'utilisateurs ouvre la page2) Le bloc PageLoad est executerIl faudrait que Comment connaitre le type d'un champs (MSSQL) d'apres le schema ? [ par odenis59 ] Bonjour,ma premiere question ! a ce jour je recupere le nom et le type de champs par le .fillschemaest le code suivantResponse.Write("Nom: " & DSTempo Datagrid [ par Sobieski ] Salut !J'ai une question (étonnant hein ?)J'ai un Datagrid. Quand je cliques sur Edit ca affiche en dessous un usercontrol qui contient des champs, qu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,764 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales