2013-07-26 4 views
0

J'essaie de me connecter à une base de données Microsoft Access, mais je ne parviens pas à connecter la connexion avec C# mais je n'arrive pas à la faire en essayant de créer un formulaire de connexion avec sql connection , cela est également une connexion localeImpossible de se connecter à la base de données SQL

private void button1_Click(object sender, EventArgs e) 
{ 
    SqlConnection conn = new SqlConnection("Data Source ='(local)';Initial Catalog ='UserAccounts.accdb';Integrated Security=true"); 
    SqlDataReader rdr = null; 
    try 
    { 
     conn.Open(); 
     MessageBox.Show("Working"); 
    } 
    catch (Exception) 
    { 
     MessageBox.Show("Error with the databse connection"); 
    } 
    finally 
    { 
     Console.ReadLine(); 
     if (rdr != null) 
     { 
      rdr.Close(); 
     } 
     if (conn != null) 
     { 
      conn.Close(); 
     } 
    } 
} 
+2

Si vous faites 'catch (Exception exc) {MessageBox. Afficher (exc.Message); } 'quelles informations utiles cela fournit-il? –

+0

@NathanLoding Je reçois une erreur liée au réseau ou à une instance spécifique lors de l'établissement d'une connexion au serveur SQL. Vérifiez que le nom de l'instance est correct et que le serveur sql est configuré pour autoriser les connexions distantes (fournisseur: fournisseur de canaux nommés, erreur: 40 impossible d'établir une connexion avec le serveur sql) thats what il dit que je sais que je dois faire avec le chemin je l'appelle juste pas sûr de ce que je fais mal faire – user2552211

Répondre

1

Cela peut sembler si simple, mais vous avez dit que vous voulez vous connecter à MS Access, mais utilisez SqlConnection, qui est spécifique à SQL Server, Alors, bien sûr, ça ne marchera jamais.

Pour MS Access, vous pouvez utiliser OleDbConnection avec une chaîne de connexion correcte, quelque chose comme ceci:

private void button1_Click(object sender, EventArgs e) 
{ 
    string connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=UserAccounts.accdb; Persist Security Info=False;"; 
    using(OleDbConnection conn = new OleDbConnection(connectionString)) 
    { 
     try 
     { 
      conn.Open(); 
      MessageBox.Show("Working"); 
     } 
     catch (Exception e) 
     { 
      MessageBox.Show("Error with the database connection\n\n + e.ToString()"); 
     } 
    } 
    Console.ReadKey(true); 
} 

Vérifiez la chaîne de connexion la plus appropriée here

+0

Cela a fonctionné comme un charme merci – user2552211

Questions connexes