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

C# Discussion :

connection base de données dbase


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2007
    Messages
    359
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 359
    Par défaut connection base de données dbase
    Bonjour, j'essaye de me connecter à une base de données de type dbase avec le code ci-contre :

    Code : 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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    using System;
    using System.Data;
    using System.Data.OleDb;
    using System.Xml.Serialization;
     
    namespace ConsoleApplication1
    {
    	class Class1
    	{
    		[STAThread]
    		static void Main(string[] args)
    		{
    #if USINGPROJECTSYSTEM
    			string strAccessConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=..\\..\\Societe.DBF;Extended Properties=dBASE IV;User ID=Admin;Password=";
    #else
    			string strAccessConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.DBF; Extended Properties=dBASE IV";
    #endif
    			string strAccessSelect = "SELECT * FROM Categories";
     
    			// Create the dataset and add the Categories table to it:
    			DataSet myDataSet = new DataSet();
    			OleDbConnection myAccessConn = null;
    			try
    			{
    				myAccessConn = new OleDbConnection(strAccessConn);
    			}
    			catch(Exception ex)
    			{
    				Console.WriteLine("Error: Failed to create a database connection. \n{0}", ex.Message);
    				Console.Read();
    				return;
    			}
     
    			try
    			{
     
    				OleDbCommand myAccessCommand = new OleDbCommand(strAccessSelect,myAccessConn);
    				OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(myAccessCommand);
    				myAccessConn.Open();
    				myDataAdapter.Fill(myDataSet,"Categories");
     
    			}
    			catch (Exception ex) 
    			{
    //il rentre toujours dans ce catch, à cause du open
    				Console.WriteLine("Error: Failed to retrieve the required data from the DataBase.\n{0}", ex.Message);
    				Console.Read();	
    				return;
    			}
    			finally
    			{
    				myAccessConn.Close();
    			}
    		}
    	}
    }
    Sachant que la table test.DBF vient juste d'être crée, à la main.
    Ca compile bien, mais à l'exécution, j'ai toujours le message d'erreur :
    "'test.DBF' n'est pas un chemin d'accès valide. Assurez-vous que le nom du chemin d'accès est correct et qu'une connexion est établie avec le serveur sur lequel réside le fichier."
    Or , si le chemin n'était pas valide, il aurait dû rentrer dans le premier catch, non ?

    Bref, si quelqu'un pouvait tester le code au dessus, et me dire ce qui cloche, parce que moi, je ne vois pas,...

    Merci !!!

  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 : 43
    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
    Par défaut
    A la création de la connexion, il n'essaie pas d'accéder au fichier. C'est seulement quand tu appelles Open sur la connexion qu'il va chercher le fichier. Donc en fait ça doit plutôt rentrer dans le 2e catch
    Il faudrait que tu mettes le chemin complet du fichier dans ta chaine de connexion pour qu'il le trouve

  3. #3
    Membre éclairé
    Inscrit en
    Juin 2007
    Messages
    359
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 359
    Par défaut
    Merci !
    Malheureusement, j'ai mis le chemin complet, et ça n'a rien changé,...

    Je continue à chercher, tout en m'approchant imperceptiblement de la corde,...

  4. #4
    Membre éclairé
    Inscrit en
    Juin 2007
    Messages
    359
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 359
    Par défaut
    "This is an SOS to the world !!!"

    Toujours rien trouvé, après avoir eu un vague espoir, plus rien, les différents tests successifs ne font que rendre plus chancelante encore la faible lueur d'espoir qui m'anime encore,...

    J'ai l'impression d'avoir lu la quasi totalité des tutos du net sur "Comment ouvrir une bdd .db avec C#", mais je suis sûr que je dois râter un truc tout bête,...

    Si quelqu'un ayant déja fait ce genre de chose pouvait donner son code ( juste la connection ), ainsi que l'emplacement de ses bases de données par rapport à son exe,...

    PS: Si ce n'est pas suffisant, le signe astrologique ainsi que la phase lunaire au moment de l'écriture du code pourrait s'avérer utile.

  5. #5
    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 : 43
    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
    Par défaut
    Je connais pas dBase, mais il semblerait que tu doives spécifier un répertoire et non un fichier...
    http://www.connectionstrings.com/?carrier=dbffoxpro
    OLE DB, OleDbConnection (.NET)
    Standard
    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\folder;Extended Properties=dBASE IV;User ID=Admin;Password=;

  6. #6
    Membre éclairé
    Inscrit en
    Juin 2007
    Messages
    359
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 359
    Par défaut
    Merci tomlev, j'ai essayé ça, et ça marche, merci de m'avoir aidé !!!

    J'arrête les sacrifices de poulets, qui n'ont finalement pas donné de résultats concluants,...

    Bonne journée

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

Discussions similaires

  1. [C#] Connection base de données
    Par discogarden dans le forum Accès aux données
    Réponses: 6
    Dernier message: 29/11/2005, 13h19
  2. connection base de données avec VB6
    Par 24 faubourg dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 07/11/2005, 20h03
  3. [CR][ASP.Net]Connection base de données / web.config
    Par Dozer71 dans le forum SAP Crystal Reports
    Réponses: 7
    Dernier message: 10/05/2005, 08h41
  4. connection base de données
    Par i__s__a dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 30/03/2005, 13h04
  5. connection à base de donnée MYSQL
    Par zouzou_zaza dans le forum Bases de données
    Réponses: 11
    Dernier message: 04/07/2004, 12h31

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