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

C#

 > 

Base de données

 > 

ADO.NET

 > 

problème de recuperation de la clé primaire et de conversion .


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

problème de recuperation de la clé primaire et de conversion .

mardi 15 avril 2008 à 10:45:20 | problème de recuperation de la clé primaire et de conversion .

sancho07

DataColumn dcmag = dsMag.Tables["magasin"].Columns["magasin_id"];
                dsMag.Tables["magasin"].Constraints.Add("PRIMARY", dcmag, true);
                int rowindex = dataGridViewMagasin.CurrentRow.Index;

                DataRow drmag = dsMag.Tables["magasin"].Rows.Find(dataGridViewMagasin[0,rowindex]); (ici j'ai une erreur de conversion )
                drmag.Delete();

voici le message d'erreur suite a la ligne en bleue :
L'exception System.InvalidCastException n'a pas été gérée
  Message="Impossible d'effectuer un cast d'un objet de type 'System.Windows.Forms.DataGridViewTextBoxCell' en type 'System.IConvertible'."

 
j'espere que vous aller pouvoir m'aider, merci d'avance.

cordialement

Pierre-Alexandre

-----------------

Technicien Informatique

Développeur Informatique

jeudi 17 avril 2008 à 00:13:49 | Re : problème de recuperation de la clé primaire et de conversion .

olibara

Salut,
Tu as essayé :

dataGridViewMagasin[0,rowindex].ToString()

??
jeudi 17 avril 2008 à 00:13:50 | Re : problème de recuperation de la clé primaire et de conversion .

olibara

Salut,
Tu as essayé :

dataGridViewMagasin[0,rowindex].ToString()

??
jeudi 17 avril 2008 à 08:45:33 | Re : problème de recuperation de la clé primaire et de conversion .

sancho07

Réponse acceptée !
j'ai tout modifié mon code en mettant directement la requete comme ci-dessous :

string requete = "DELETE FROM magasin WHERE magasin_id=" + dataGridViewMagasin.Rows[rowindex].Cells[0].Value + " ";
                macommande = new MySqlCommand(requete, FormLogin.maconnection);
                macommande.ExecuteNonQuery();


et cela fonctionne .

Pierre-Alexandre

-----------------

Technicien Informatique

Développeur Informatique

samedi 19 avril 2008 à 17:18:57 | Re : problème de recuperation de la clé primaire et de conversion .

coq

Administrateur CodeS-SourceS
Salut,

Sinon les requêtes paramétrées c'est cool, histoire de minimiser les risques d'injection SQL.



/*
coq
MVP Visual C#
CoqBlog
*/
samedi 19 avril 2008 à 17:58:56 | Re : problème de recuperation de la clé primaire et de conversion .

olibara

Salut coq

Et bien justement, je viens de me taper une requete "a la main" car je n'ai pas encore bien saisi le cheminement d'une requete parametrée qui me semble vu certains exemples encore plus complexe que la requete "a la main"


        string xCmd = "INSERT INTO ritstat (orde,date,time,addrID,Scan_Num,capaciteit,vol,Gewicht,dag,chauffeur) "
                    +" VALUES ("
                    + dr["Order1"].ToString()
                    +"," +dr["Datum"].ToString()
                    +",'" + dr["Uur"].ToString()+"'"
                    +"," + addrID
                    +"," + ScanNum
                    +"," + capa
                    +"," + vol
                    +"," + dr["Gewicht"].ToString()
                    +"," + dr["dag"].ToString()
                    +",'"+dr["chauffeur"].ToString()+"')";

        MySqlCommand cmd = new MySqlCommand(xCmd, MyConn.conn);
        try
        {
          int nUpd = cmd.ExecuteNonQuery();
        }
        catch (MySqlException e)
        {
          StreamWriter sw = new StreamWriter(archievPath + "duplicate.txt", true);
          MessageBox.Show(e.Message);
          sw.WriteLine("{0}\tline {1}\t{2}", curFile,numRec, e.Message);
          sw.Close();
          continue;

samedi 19 avril 2008 à 18:34:29 | Re : problème de recuperation de la clé primaire et de conversion .

coq

Administrateur CodeS-SourceS
Réponse acceptée !
De mémoire/direct dans la zone de saisie ça donnerais

string xCmd = "INSERT INTO ritstat (orde,date,time,addrID,Scan_Num,capaciteit,vol,Gewicht,dag,chauffeur) VALUES (?orde, ?date, ?time, ?addrID, ?Scan_Num, ?capaciteit, ?vol, ?Gewicht, ?dag, ?chauffeur)";
...
cmd.Parameters.AddWithValue("?orde", dr["Order1"].ToString());
...

Plus complexe ?
Moi je trouve ça plus lisible, donc plus maintenable, sans parler de l'aspect sécurité.


/*
coq
MVP Visual C#
CoqBlog
*/
samedi 19 avril 2008 à 18:38:04 | Re : problème de recuperation de la clé primaire et de conversion .

coq

Administrateur CodeS-SourceS
Sans parler aussi du fait que du coup on peut laisser le provider se débrouiller avec les DateTime pour la paramètres date, time etc afin qu'ils soient formatés correctement pour le type des colonnes.



/*
coq
MVP Visual C#
CoqBlog
*/
samedi 19 avril 2008 à 19:30:25 | Re : problème de recuperation de la clé primaire et de conversion .

olibara

Merci Coq !

Allez ! tu m'encourage je vais essayer

Mais je crois aussi que suivant les languages, le ? peut etre un @ ou je ne sais quoi encore, je vais vérifier pour csharp

 

 

samedi 19 avril 2008 à 19:36:45 | Re : problème de recuperation de la clé primaire et de conversion .

coq

Administrateur CodeS-SourceS
Ce n'est pas lié au langage client mais plus au provider/serveur SQL.
Il y a aussi des providers qui ne supportent pas les paramètres nommés, comme avec ODBC par exemple avec lequel on ne peut utiliser que les paramètres par position.


/*
coq
MVP Visual C#
CoqBlog
*/


Cette discussion est classée dans : system, conversion, tables, magasin, dsmag


Répondre à ce message

Sujets en rapport avec ce message

Probleme après conversion de Visual Studio 2003 à 2005 [ par EvilDef ] Je ne peux pas voir le fenetre après la conversion de mon logiciel sous VS2005, j'obtient le message : <td style="VERTICAL-ALIGN: top; LETTER-S Appli qui tourne normal sur Visual Studio 2005, et plante quand je lance l'exe seul [ par duteux ] Bonjour à tous, J'ai ecrit une application Windows en C# qui parcour les fichiers *.eml pour en extraire toutes les adresses mails présentes. Quand Conversion string[,] depuis System.Array [ par el_teedee ] Bonjour, tout est dans le titre, je récupère un System.Array qui, par exemple est un tableau de string [5,3] : [1,1] [1,2][1,3]... [5,1] [5,2] [5,3] String en System.Drawing.Color :: Conversion [ par juliendemomaker ] Hello !Bon comme le dit le titre je recherche à convertir un String en System.Drawing.Color...En faîte je cherche à charger depuis un fichier de confi Equivalent ContextMenuStrip en .NET 1.1 ? [ par fcolo ] Bonjour tout le monde, J'ai réalisé une application sous VS2005 donc compilée en .NET 2.0.Or, je voudrais la compiler en .NET 1.1 pour des raison de p Boite de dialogue [ par Pepin21 ] Bonjour,J'ai une question vraiment très bête, mais je ne mis connais pas encore bien. Voilà : je voudrais utiliser une boite de dialogue MessageBox da Access + C# [ par eddy69270 ] Bonjour,je bosse sur une base access d'où je prend des données pour remplir mes différents DataGrid : private void Remplit connection OleDb et Oracle [ par atmeitsatme ] Bonjour,J'utilise dans un web service un acces à ma base de données Oracle via les objets OleDB.Mon code :     [WebMethod]    public int test()    {   conversion [ par 24 ans ] j'ai une chaine qui contient une date exemplestring dt="2006/03/14"comment est ce que je peux la convertir  en type date modifier une donnée dans un datagrid??? [ par jngwolf44 ] salut,voilà le problème j'arrive bien a creer une base de donnée en memoire avec un datagrid, j'arrive a le remplir avec des données, a consulter les


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,530 sec (3)

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