IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Accès aux données Discussion :

Question sur le namespace Sybase.Data.AseClient?


Sujet :

Accès aux données

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    295
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 295
    Points : 67
    Points
    67
    Par défaut Question sur le namespace Sybase.Data.AseClient?
    Bonjour,

    j'au une question sur le namespace Sybase.Data.AseClient qui utiliser pour supporter la base de donnéé Sybase le probleme que les les parametres ne supportent pas DBNull.value voici le code

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    string chaine="Data Source=MAserver;Port=5000;Database=Export;Uid=sa;Pwd=;";
    			Sybase.Data.AseClient.AseConnection ase=new Sybase.Data.AseClient.AseConnection(chaine);
     
    			string query="insert into ASYNCHRONE(OPERATION,id_personne) values (@OPERATION,@id_personne)";
     
                 Sybase.Data.AseClient.AseCommand Cmd=null;
     
    			try
    			{
    				ase.Open();
    				Cmd=ase.CreateCommand();
    				Cmd.CommandText=query;
    				Sybase.Data.AseClient.AseParameter para1=new Sybase.Data.AseClient.AseParameter("@OPERATION",DBNull.Value);
                    Cmd.Parameters.Add(para1);
     
    				Sybase.Data.AseClient.AseParameter para2=new Sybase.Data.AseClient.AseParameter("@id_personne","2222");
    				Cmd.Parameters.Add(para2);
     
     
    				Cmd.ExecuteNonQuery();
     
    			}
    			catch(Exception e)
    			{
    Console.WriteLine(e.Message);
    			}

    dans le code il declenche une erreur Unsupported parameter type

    est ce que on peut remplacer objet DBNull.Value par une autre valeur pour supporter ?

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 754
    Points
    39 754
    Par défaut
    essaie null...

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    295
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 295
    Points : 67
    Points
    67
    Par défaut
    j'ai essayé avec la valeur null il me declenche meme error Unsupported parameter type

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 754
    Points
    39 754
    Par défaut
    Je crois que je devine ce qui ne va pas... comme tu indiques DBNull.Value comme valeur du paramètre, il ne peut pas deviner quel est le type réel du paramètre. En lui spécifiant explicitement le type, je pense que ça devrait passer :
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Sybase.Data.AseClient.AseParameter para1=new Sybase.Data.AseClient.AseParameter("@OPERATION",AseDbType.Integer);
    para1.Value = DBNull.Value;
    (en supposant que la colonne Operation soit de type entier)

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    295
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 295
    Points : 67
    Points
    67
    Par défaut
    Merci bcp ca marche mais j'ai une question pour sous System.data.OracleClient ou System.Data.SqlClient ca marche dans specifier le type de données est ce que ce sont des classes de framework .net mais par fois j'ai une liste des champs à inserer donc c necessaire de faire un switch pour stocker le type exacte n'est ce pas

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 754
    Points
    39 754
    Par défaut
    Citation Envoyé par ouadie99 Voir le message
    Merci bcp ca marche mais j'ai une question pour sous System.data.OracleClient ou System.Data.SqlClient ca marche dans specifier le type de données est ce que ce sont des classes de framework .net mais par fois j'ai une liste des champs à inserer donc c necessaire de faire un switch pour stocker le type exacte n'est ce pas
    Y a pas de signes de ponctuation sur ton clavier ?
    J'ai rien compris à la question...

  7. #7
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    295
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 295
    Points : 67
    Points
    67
    Par défaut
    Merci bcp ca marche tres bien
    mais pourquoi sous namespace System.data.OracleClient ou System.Data.SqlClient ca marche sans specifier le type de données.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    System.Data.OracleClient.OracleParameter para1=new System.Data.OracleClient.OracleParameter ("@OPERATION",DBNull.Value);
    ou
     
    System.Data.SqlClient.SqlParameter para1=new System.Data.SqlClient.SqlParameter ("@OPERATION",DBNull.Value);
    est ce que ce sont des classes de framework .net ? car parfois j'ai une liste des champs à insérer donc je fais une boucle foreach pour collecter les champs donc pour chaque champ on spécifie le type de données à insérer c pas pratique ca !!!

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 754
    Points
    39 754
    Par défaut
    Ben le provider Sybase doit pas être implémenté pareil...
    Et oui, System.Data.OracleClient et System.Data.SqlClient sont des classes standard du framework

    Enfin, de toutes façons, il vaut toujours mieux préciser le type des paramètres, ça évite des mauvaises surprises par la suite

  9. #9
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    295
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 295
    Points : 67
    Points
    67
    Par défaut
    merci bcp

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. System.Data.AseClient sur Win server 2003
    Par fmadore dans le forum Sybase
    Réponses: 0
    Dernier message: 16/10/2009, 21h04
  2. Question sur l'item data de la combo box
    Par beegees dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 25/12/2008, 15h30
  3. [2.3] Question sur les Join Data Set
    Par scariou29 dans le forum BIRT
    Réponses: 2
    Dernier message: 06/10/2008, 12h34
  4. question sur enum System.Data.DbType
    Par ouadie99 dans le forum C#
    Réponses: 3
    Dernier message: 21/05/2008, 10h51
  5. Questions Sur Data Repport
    Par tarik1 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 21/05/2007, 08h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo