Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Probleme OleDbDataReader [ Base de données / Access ] (bibibiba)

mercredi 25 juin 2008 à 10:45:54 | Probleme OleDbDataReader

bibibiba

Bonjour,je suis novice en C# et j'ai une classe BaseAccess qui doit permettre de lire les données d'un utilisateur contenues dans une base,pour ce faire je veux utiliser une Hashtable qui recueillerait les données de la personne a sa connexion mais j'ai beau faire,la hashtable ne prends aucun argument,pourriez vous m'aider?

using System;
using System.Collections;
using System.Data;
using System.Data.OleDb;
using Authentification;
using utile;
using System.Reflection;
using System.ComponentModel;
using System.Windows.Forms;

namespace General
{
 public class BaseAccess
 {
  private string filename;
  private string connStr;
  private OleDbConnection oConn;
  private OleDbDataReader rdr;
  private OleDbCommand oCmd=new OleDbCommand();
  
  // type record contenant le nom d'une colonne et sa valeur associée
  public struct record
  {
   public record(string column_name, object content)
   {
    this.column_name = column_name;
    this.content = content;
   }
   public string column_name;
   public object content;
  }
  // constructeur nécessitant le path du fichier base de donnée Access
  public BaseAccess()
  { 
   //le filename correspond a la ligne du .ini
   this.filename = Parametres.chemin_base;
   this.connStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+filename;
  }
  
  ~BaseAccess()
  { 
   this.Close();
  }
  // établie une connexion sur la base Access
  public bool Open()
  {
   try
   {
    this.oConn = new OleDbConnection(this.connStr);
    this.oConn.Open();
    return true;
   }
   catch
   {
    return false;
   }
  }
  // ferme la connexion à la base Access
  public bool Close()
  {
   try
   {
    this.oConn.Close();
    return true;
   }
   catch
   {
    return false;
   }
  }
  // execute une requête SQL sur la base Access
  public bool Execute(string ordre)
  {
   try
   {
    
    this.oCmd = new OleDbCommand(ordre,this.oConn);
    this.rdr = this.oCmd.ExecuteReader();
    Console.WriteLine("La requete a reussie");
    return true;
   }
   catch
   {
    Console.WriteLine("La requete a echoué");
    return false;
    
   }
  }
  // renvoi une ArrayList contenant des enregistrements de type record
  // contenant les différents champs de la ligne lue
  public ArrayList Fetch()
  {
   ArrayList row = new ArrayList();
   if (this.rdr.Read())
   {
    record rec;
    for (int i=0;i<this.rdr.FieldCount;i++)
    {
     rec.column_name = this.rdr.GetName(i);
     rec.content = this.rdr[i];
     row.Add(rec);
    }
   }
   return row;
  }
    
  public Hashtable Fetch2()
  {
   Hashtable row = new Hashtable();
   MessageBox.Show("compte table\n"+this.rdr.FieldCount);
   if (this.rdr.Read())
   {
    //record rec;
    for (int i=0;i<this.rdr.FieldCount;i++)
    {
     //rec.column_name = this.rdr.GetName(i);
     //rec.content = this.rdr[i];
     row.Add(this.rdr.GetName(i),this.rdr[i]);
    }
   }
   return row;
  }

samedi 28 juin 2008 à 21:43:50 | Re : Probleme OleDbDataReader

coq

Administrateur CodeS-SourceS
Salut,

2 pistes :
- la requête executée renvoi un jeu de résultats vide
- la requête executée renvoi plusieurs jeux de résultats, et le premier est vide



/*
coq
MVP Visual C#
CoqBlog
*/



Cette discussion est classé dans : public, system, using, return, rdr


Répondre à ce message

Sujets en rapport avec ce message

Generer des points aleatoirement !? [ par jimmy69 ] Bonjour  a tous ,Je suis sous visual studio . net et j'apprends le c sharp !Je me suis fait une class que j'ai nomme MyPoint.cs que voici :----------- Serveur UDP [ par Sobieski ] Salut.Je voudrais printer dans la console ce qui arrive en UDP sur le port 4321. J'ai fait un bout de code mais ca plante comme il faut :/ using Syste Problèmes de création d'un service Windows [ par nyoto ] Bonjour à tous,Ne développant pas depuis très longtemps en .Net je galère grave pour créer un service windows récupérant automatiquement à intervalles WebService C# (variable non modifiée !!) [ par mesdevs ] Bonjour, Je débute tout juste en C# (Visual Studio 2005), et j'ai déjà un problème (désolé si ça vous parait trivial, mais moi ça me prend la tête) : Forms en série... [ par immerczeck ] Bonjour!Pourriez-vous m'aider à trouver l'erreur dans ce code, à chaque fois que je clique sur le button1, une fenêtre apparaît, mais elle reste bloqu probleme d' interopérabilité [ par thmatew ] Amis développeurs, bonjour,j'ai un petit souci, je n'arrive pas a utilisé une DLL que j'ai créer dans mon programme, c'est un petit programme tt simpl Création de Task executé avant la compliation. [ par sosekeyser ] Bonjour, Je souhaite executer des tâches persos avant où après la compilation d'un projet. Exemple d'application : J'auto-incrémente la version du pro Plusieurs structures imbriquées [ par F0ra ] Bonjour, Je voudrais réaliser plusieurs structures imbriquées Comme : Couches[1].Neurons[1].w[1]=0 Dans le ficier Ia.cs : using System; using System Récupérer des variables d'une Form1 à une Form2 [ par Gargantuass ] Bonjours à tous,voilà j'ai un petit problème qui est le suivant :j'ai une première fenêtre Form1 qui affiche 3 boutons si je clique sur un bouton une Graphique Powerpoint 2007 accès aux données [ par olecossois ] Voila ça fait plusieurs jours que je cherche et je ne trouve rien : voici mon code, je vous explique ce que je veux après.using System;<font color="#0


Nos sponsors

Sondage...

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,36 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.