none
Connection et requete a Ms SQL RRS feed

  • Question

  • Hello,

    en attendant que mes tables soit créé, voici un code que j'ai fais pour prendre un peu d'avance. Pouvez-vous m'aider a le corriger? (Je n'ai pas encore d'erreur puisque les tables existe pas Wink)


    Voici dataBase.cs

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    using System.Data.OleDb;


    namespace courtageBeta1
    {
        class dataBase
        {

            private System.Data.OleDb.OleDbConnection Connection;
            public void Open(string FileName)
            {
                Connection = new System.Data.OleDb.OleDbConnection();
                Connection.ConnectionString = "Provider=microsoft.jet.oledb.4.0;Data Source=" + FileName + ";";
                Connection.Open();
            }
            public System.Data.DataTable GetTable(string Requete)
            {
                try
                {
                    System.Data.DataSet DtSet = new System.Data.DataSet();
                    System.Data.OleDb.OleDbDataAdapter AdapTContact = new System.Data.OleDb.OleDbDataAdapter(Requete, Connection);
                    AdapTContact.Fill(DtSet, ((char)0).ToString());
                    return DtSet.Tables[0];
                }
                catch (Exception Err)
                {
                    throw Err;
                }
            }
            public void Close()
            {
                Connection.Close();
                Connection.Dispose();
                Connection = null;
            }
        }
    }


    et voici le code de connection que j'ai insérer dans fenPrincipal.cs

    public void myconnect() { System.Data.DataTable Table; dataBase myDataBase = new dataBase(); Bd.Open(@"localhost"); Table = Bd.GetTable("select * from xdb_contact"); dataGridView1.DataSource = mydatabase.myDataTable; dataGridView1.Refresh(); Bd.Close(); }

    Certe il vas y avoir des faute, comme mydatatable et datasource que je sais pas si ils existent encore Smile

    Je me suis inspiré de cette article:

    http://www.codyx.org/snippet_connexion-base-donnees-access_107.aspx


    Edit: Un exemple typique de correction: La requete SQL va changer selon le bouton pressé, comment faire alors pour que myconnect() n'est pas sa requete statique comme maintenant, mais dynamique? par exemple je sais pas:

    myconnect()
    requete= "marequete";
    et dans dataBase.cs qu'il traite requete.
    return result
    fenPrincipal -> affiche result

    ?


    Voilà, Qu'en pensez-vous? Que faut-il corriger? comment?

    Salutations Wink
    mardi 22 juillet 2008 12:11

Toutes les réponses

  • 何......

     

    J'en perds mon latin

     

    Tu mélanges un peu tout là. Est ce que tu te connectes à une base Access ? (la première portion de ton code) ou à une base MSSQL ? (la deuxième partie )

     

    Bon si c'est du MSSQL va plutôt regarder ce côté là:

    http://www.csharp-station.com/Tutorials/AdoDotNet/Lesson02.aspx

     

    Dotnet intègre des objets spécifiques à MSQSQL que tu trouveras dans : System.Data.SqlClient qu'il vaut mieux préférer à Ole puisque tu n'est pas tributaire d'une version d'ole qui peut varier d'une machine à une autre.

     

    Si c'est du côté d'access que tu te trouves ce n'est pas localhost mais le chemin du fichier mdb que tu dois indiquer. (Faut que je me remette à écrire le tutoriel sur ce sujet que je voulais faire).

     

    Pour le reste j'ai pas encore regardé en détail car MSSQL ou access ça peut changer pas mal de choses.

    mardi 22 juillet 2008 15:12