Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1156 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [BD] c# + BD access

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[BD] c# + BD access

n°1139483
didier1809
${citation_perso}
Posté le 04-07-2005 à 15:43:59  profilanswer
 

Bonjour, comme l'année prochaine à l'école on va faire un peu plus de BD, j'aimerai déja m'avancer la dedan, mais j'ai pas tellement envie d'installer Oracle, donc je me demandais ce qu'il y avais d'autre de relativement simple, pour utiliser en C# ou java :)
 
Merci


Message édité par didier1809 le 05-07-2005 à 16:46:04

---------------
.
mood
Publicité
Posté le 04-07-2005 à 15:43:59  profilanswer
 

n°1139487
skeye
Posté le 04-07-2005 à 15:46:02  profilanswer
 

mysql?


---------------
Can't buy what I want because it's free -
n°1139488
didier1809
${citation_perso}
Posté le 04-07-2005 à 15:48:38  profilanswer
 


 
merci, c'est simpla à utiliser ? je veut dire : pas besoin d'installer des trucs complémentaires ?
 
et juste pour finir : tu aurais des sites ou des exemples en java ou c# qui montrent simplement comment s'y connecter ? :)
 


---------------
.
n°1139496
skeye
Posté le 04-07-2005 à 15:57:38  profilanswer
 

Simple à utiliser, oui...mais vaut mieux installer une interface d'administration, prce-que la ligne de commande c'est un peu austère.
Pour la connexion je te laisse chercher doit y en avoir partout...


---------------
Can't buy what I want because it's free -
n°1139500
didier1809
${citation_perso}
Posté le 04-07-2005 à 16:01:06  profilanswer
 

skeye a écrit :

Simple à utiliser, oui...mais vaut mieux installer une interface d'administration, prce-que la ligne de commande c'est un peu austère.
Pour la connexion je te laisse chercher doit y en avoir partout...


 
J4ai l'habitude pour les lignes de commandes, j'utilise sql+ à l'ecole  :sweat:  
 
Merci en tt cas :)


---------------
.
n°1140536
didier1809
${citation_perso}
Posté le 05-07-2005 à 15:27:18  profilanswer
 

J'ai essayé d'installer Mysql, mais il se plante à l'instalation (impossible de commencer le service ...)
 
Donc je me suis rabattu sur les base de données acces, mais j'ai du mal à comprendre le principe :(


---------------
.
n°1140560
cesarr89
Posté le 05-07-2005 à 15:38:42  profilanswer
 

didier1809 a écrit :


Donc je me suis rabattu sur les base de données acces, mais j'ai du mal à comprendre le principe :(


 
 :??:  
Comment ca tu comprends pas le principe?

n°1140565
didier1809
${citation_perso}
Posté le 05-07-2005 à 15:40:52  profilanswer
 

cesarr89 a écrit :

:??:  
Comment ca tu comprends pas le principe?


 
Ben j'arrive a parcourir ma table, ou a inserer des trucs du style :
 
lareqinsert="INSERT INTO Personnes VALUES('11','22')";
 
Mais si je veut demander dans un textbox par exemple les valeurs, je fait comment ?


---------------
.
n°1140579
cesarr89
Posté le 05-07-2005 à 15:45:47  profilanswer
 

didier1809 a écrit :

Ben j'arrive a parcourir ma table, ou a inserer des trucs du style :
 
lareqinsert="INSERT INTO Personnes VALUES('11','22')";
 
Mais si je veut demander dans un textbox par exemple les valeurs, je fait comment ?


 
Ah oui quand même....Tu y accéde comment à ta BD?
Tu as juste à faire un select, à prendre les valeurs et à les mettre dans les textbox.

n°1140587
didier1809
${citation_perso}
Posté le 05-07-2005 à 15:49:54  profilanswer
 

cesarr89 a écrit :

Ah oui quand même....Tu y accéde comment à ta BD?
Tu as juste à faire un select, à prendre les valeurs et à les mettre dans les textbox.


 
non, c'est l'inverse que je veut ;)
 
Je veut écrire dans la table ;)
 
pour lire, c'est bien comme ca :  
 

Code :
  1. String ConnStr = @"Provider=Microsoft.Jet.OleDB.4.0 ;
  2.     Data Source=C:\Documents and Settings\Didier.DIDIER-0A8C02A9\Mes documents\ptitprog\bd.mdb";
  3.         OleDbConnection oConn = new OleDbConnection(ConnStr);
  4.      try 
  5.      { 
  6.          oConn.Open(); 
  7.          String sqlQuery = "SELECT * FROM Personnes";
  8.          OleDbCommand oCmd = new OleDbCommand(sqlQuery,oConn) ;
  9.          OleDbDataReader result = oCmd.ExecuteReader(); 
  10.    
  11.          if( result != null)
  12.          {
  13.   while(result.Read()) 
  14.   { 
  15.    //Le 0 c'est le numero de la colonne a lire
  16.                  MessageBox.Show(result.GetString(0)) ; 
  17.   }
  18.          }
  19.          oConn.Close();
  20.      } 
  21.      catch(Exception exp) 
  22.      { 
  23.          MessageBox.Show("Erreur :" + exp.Message); 
  24.      }


 
 :??:


---------------
.
mood
Publicité
Posté le 05-07-2005 à 15:49:54  profilanswer
 

n°1140596
cesarr89
Posté le 05-07-2005 à 15:56:03  profilanswer
 

Ca marche ton truc?
 
Tu peux aussi faire avec (string)result["nom du champ"]

n°1140600
didier1809
${citation_perso}
Posté le 05-07-2005 à 15:57:14  profilanswer
 

cesarr89 a écrit :

Ca marche ton truc?
 
Tu peux aussi faire avec (string)result["nom du champ"]


 
Oui ca marche, j'essaierai aussi avec ta solition.
 
Pour écrire ce qui vient de textbox dans ma table ? pas d'idées ?


---------------
.
n°1140602
cesarr89
Posté le 05-07-2005 à 15:58:50  profilanswer
 

Bah si, tu fais un insert, c'est quoi le problème?

n°1140603
didier1809
${citation_perso}
Posté le 05-07-2005 à 15:59:44  profilanswer
 

cesarr89 a écrit :

Bah si, tu fais un insert, c'est quoi le problème?


 
ben avec le string, ca va, mais comment je remplace les valaurs dedan ?
 
edit : en plus ca doit etre vraiment con  :sweat:


Message édité par didier1809 le 05-07-2005 à 15:59:57

---------------
.
n°1140608
cesarr89
Posté le 05-07-2005 à 16:00:35  profilanswer
 

didier1809 a écrit :

ben avec le string, ca va, mais comment je remplace les valaurs dedan ?


 
 :heink:  
 
J'ai pas compris ce que tu voulais dire.

n°1140614
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:01:45  profilanswer
 

Code :
  1. string lareqinsert;
  2.   String ConnStr = @"Provider=Microsoft.Jet.OleDB.4.0 ;
  3.     Data Source=C:\Documents and Settings\Didier.DIDIER-0A8C02A9\Mes documents\ptitprog\bd.mdb";
  4.   OleDbConnection oConn = new OleDbConnection(ConnStr);
  5.   lareqinsert="INSERT INTO Personnes VALUES('22','33')";
  6.   try
  7.   {
  8.    oConn.Open();
  9.    OleDbCommand lacommandinsert=new OleDbCommand(lareqinsert,oConn);
  10.    lacommandinsert.ExecuteNonQuery();
  11.    oConn.Close();
  12.   }
  13.   catch (Exception e1)
  14.   {
  15.    MessageBox.Show("erreur accès BD (Modifier):"+e1.Message);
  16.   }


 
J'ai ca pour le moment, les élements à insérer sont en "dur" dans ma chaine, et j'aimerai que se soit le coontenu des textbox qui soient insérés


---------------
.
n°1140616
cesarr89
Posté le 05-07-2005 à 16:02:32  profilanswer
 

Ben oui ben c'est quoi le problème alors?
Je comprends pas.

n°1140620
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:04:38  profilanswer
 

cesarr89 a écrit :

Ben oui ben c'est quoi le problème alors?
Je comprends pas.


 
ben ca :
lareqinsert="INSERT INTO Personnes VALUES(" + this.textBox1 +","+ this.textBox2+ " )";
 
ca marche pas [:dawa]


---------------
.
n°1140626
cesarr89
Posté le 05-07-2005 à 16:07:07  profilanswer
 

Tu as pas l'impression qu'il te manque quelque chose?
 
 
Sinon c'est vivement conseillé de faire comme ci-dessous:

Code :
  1. string requete ="insert into [matable] value (?, 'coucou') ";
  2. OleDbCommand oDbCmd = new OleDbCommand(requete, this.oConn);
  3. oDbCmd.Parameters.Add("monchamp1",OleDbType.VarChar,255);
  4. oDbCmd.Parameters["monchamp1"].Value = textbox.text;


 
Edit: Y'a une MSDN elle est pas faite pour faire jolie.


Message édité par cesarr89 le 05-07-2005 à 16:07:41
n°1140628
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:08:11  profilanswer
 

cesarr89 a écrit :

Tu as pas l'impression qu'il te manque quelque chose?
 
 
Sinon c'est vivement conseillé de faire comme ci-dessous:

Code :
  1. string requete ="insert into [matable] value (?, 'coucou') ";
  2. OleDbCommand oDbCmd = new OleDbCommand(requete, this.oConn);
  3. oDbCmd.Parameters.Add("monchamp1",OleDbType.VarChar,255);
  4. oDbCmd.Parameters["monchamp1"].Value = textbox.text;


 
Edit: Y'a une MSDN elle est pas faite pour faire jolie.


 
ben j'ai encore jamais bossé avec des BDD dans un prog, donc je découvre :(
 
Merci, ej teste ca


---------------
.
n°1140639
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:17:36  profilanswer
 

dans le cas ou j'ai plusieurs paramètre, ceci devrait marcher non ?
 

Code :
  1. string requete ="insert into Personnes values (?, ?) ";
  2.   OleDbCommand oDbCmd = new OleDbCommand(requete, oConn);
  3.   oDbCmd.Parameters.Add("pseudo",OleDbType.VarChar,255);
  4.   oDbCmd.Parameters.Add("nom",OleDbType.VarChar,255);
  5.   oDbCmd.Parameters["pseudo"].Value = this.textBox1.Text;
  6.   oDbCmd.Parameters["nom"].Value = this.textBox2.Text;


---------------
.
n°1140642
cesarr89
Posté le 05-07-2005 à 16:19:14  profilanswer
 

Oui ca devrait marcher

n°1140645
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:22:18  profilanswer
 

http://img69.imageshack.us/img69/932/erreur23yh.jpg
je suis maudis  :sweat:


Message édité par didier1809 le 05-07-2005 à 16:25:52

---------------
.
n°1140647
cesarr89
Posté le 05-07-2005 à 16:23:20  profilanswer
 

Marche pas ton lien

n°1140652
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:24:21  profilanswer
 

cesarr89 a écrit :

Marche pas ton lien


 
J'ai vu, une seconde ;)


---------------
.
n°1140657
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:28:04  profilanswer
 

voila, j'ai meme essayé avec des null pour compléter les champrs, mais ca ne change rien :(


---------------
.
n°1140662
cesarr89
Posté le 05-07-2005 à 16:32:47  profilanswer
 

Tu es certin que le champs sont "nom" et "pseudo" ?
Y'a que ca comme champs?

n°1140673
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:41:45  profilanswer
 

cesarr89 a écrit :

Tu es certin que le champs sont "nom" et "pseudo" ?
Y'a que ca comme champs?


 
Oui, j'ai retiré les autres, je n'ai plus que "nom", et "pseudo" dans ma table :(


---------------
.
n°1140676
cesarr89
Posté le 05-07-2005 à 16:46:19  profilanswer
 

C'est bizar quand même.
Test avec ceci:  

Code :
  1. oDbCmd.Parameters.Add("pseudo",OleDbType.VarChar,255,"pseudo" );          oDbCmd.Parameters.Add("nom",OleDbType.VarChar,255,"nom" );


Message édité par cesarr89 le 05-07-2005 à 16:46:57
n°1140732
didier1809
${citation_perso}
Posté le 05-07-2005 à 16:52:34  profilanswer
 

cesarr89 a écrit :

C'est bizar quand même.
Test avec ceci:  

Code :
  1. oDbCmd.Parameters.Add("pseudo",OleDbType.VarChar,255,"pseudo" );          oDbCmd.Parameters.Add("nom",OleDbType.VarChar,255,"nom" );



 
meme probleme, j'ai regardé en vitesse la msdn, et ils ne sont pas tres clairs sur la propriété "parameters" :(


---------------
.
n°1141156
didier1809
${citation_perso}
Posté le 05-07-2005 à 18:51:51  profilanswer
 

toujours personne ? :(


---------------
.
n°1141321
Arjuna
Aircraft Ident.: F-MBSD
Posté le 05-07-2005 à 21:35:10  profilanswer
 

Perso, je préfère infiniment SQL Server. La version "lite", MSDE est librement et gratuitement téléchargeable sur le site de Microsoft.
 
Elle te sera bien plus utile que MySQL ou Access si au programme vous faites de la base de données évoluée (procédures stockées, triggers, sous-requêtes, etc.)
 
Si tu veux un truc plus proche de la norme SQL-92, que vous allez certainement apprendre, oriente-toi vers PostGre, qui offre un meilleur niveau de compatibilité, bien que celui de SQL Server soit déjà très bon.
 
En effet, à moins d'utiliser la dernière Beta de MySQL, tu sera limité au SQL pure, et même là, tu seras confronté à de sérieuses limitations.
Deplus, les outils de gestion de base pour MySQL, y'a rien de vraiment terrible, SQL Server est sans conteste le meilleur dans ce domaine. Access quand à lui, ben... c'est pas vraiment un SGBD, ça marche pas mal, on peut faire pas mal de choses mais bon... C'est pas forcément ce qu'il y a de mieu pour ce former au SQL.


Message édité par Arjuna le 05-07-2005 à 21:40:30
n°1141327
Arjuna
Aircraft Ident.: F-MBSD
Posté le 05-07-2005 à 21:36:55  profilanswer
 

Sinon, l'interface avec les programme est la même pour tous les SGBD, donc tu auras toujours ton problème actuel. Je ne vois pas ce qui cloche dans ton truc :)

n°1141347
didier1809
${citation_perso}
Posté le 05-07-2005 à 21:50:50  profilanswer
 

Arjuna a écrit :

Perso, je préfère infiniment SQL Server. La version "lite", MSDE est librement et gratuitement téléchargeable sur le site de Microsoft.
 
Elle te sera bien plus utile que MySQL ou Access si au programme vous faites de la base de données évoluée (procédures stockées, triggers, sous-requêtes, etc.)
 
Si tu veux un truc plus proche de la norme SQL-92, que vous allez certainement apprendre, oriente-toi vers PostGre, qui offre un meilleur niveau de compatibilité, bien que celui de SQL Server soit déjà très bon.
 
En effet, à moins d'utiliser la dernière Beta de MySQL, tu sera limité au SQL pure, et même là, tu seras confronté à de sérieuses limitations.
Deplus, les outils de gestion de base pour MySQL, y'a rien de vraiment terrible, SQL Server est sans conteste le meilleur dans ce domaine. Access quand à lui, ben... c'est pas vraiment un SGBD, ça marche pas mal, on peut faire pas mal de choses mais bon... C'est pas forcément ce qu'il y a de mieu pour ce former au SQL.


 
 
j'ai déja suivi des cours, mais uniquement directment en entrant les commandes sql, ou en faisant des scripts pour les trigger ou autres.
 
Je vais me renseigner pour MSDE alors :)
 
Et moi non plus je ne comprend pas ce qui ne va pas :(


---------------
.
n°1141559
Arjuna
Aircraft Ident.: F-MBSD
Posté le 06-07-2005 à 00:56:47  profilanswer
 

Ben alors pour le reste, d'un point de vue programmation, même si là t'es confronté à un petit problème, à priori ça posera pas de problème.
 
Le plus dur niveau SQL, ben... C'est faire en SQL ce qu'on peut éviter de faire dans le langage qui appelle le SQL. Mais lancer une commande SQL et interpréter le résultat, quelque soit le langage, ça ne pose pas de problème particulier, c'est tout bête ;)

n°1141664
didier1809
${citation_perso}
Posté le 06-07-2005 à 09:40:36  profilanswer
 

Arjuna a écrit :

Ben alors pour le reste, d'un point de vue programmation, même si là t'es confronté à un petit problème, à priori ça posera pas de problème.
 
Le plus dur niveau SQL, ben... C'est faire en SQL ce qu'on peut éviter de faire dans le langage qui appelle le SQL. Mais lancer une commande SQL et interpréter le résultat, quelque soit le langage, ça ne pose pas de problème particulier, c'est tout bête ;)


 
J'ai vu ca, il y a juste quelques bizzareries avec mon insert ;)
 
Pour les commandes SQL, ca va, je me débrouille :)


---------------
.
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [BD] c# + BD access

 

Sujets relatifs
importer table ACCESS ac EasyPHPmigration access postgresql
[ACCESS] Récuperer des données avt suppressionCacher l'instance d'Access
access denied (java.util.PropertyPermission org.jboss.util.NestedThrow[VB] Fermer Excel depuis Access
Access: erreur OBDC sur champ non renseignécomment Envoyer de Données sur excel A partir de Access
comment générer un document Word avec access?Problème OleDb sur Base Access
Plus de sujets relatifs à : [BD] c# + BD access


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR