C# Połączenie z bazą acces (mdb)

C# Połączenie z bazą acces (mdb)
S7
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 34
0

Witam!

Jak w temacie. Walczę od rana i nie potrafię połączyć się z bazą danych. Poniżej kod

Kopiuj
using System;
using System.Data.OleDb;

namespace test1
{
	class Program
	{
		public static void Main(string[] args)
		{
		   OleDbDataReader rdr = null;
           string sciezka_do_bazy = @"Provider=Microsoft.ACE.OLEDB.12.0; DataSource=C:\Users\szymon\Documents\SharpDevelop Projects\test.mdb";
           OleDbConnection con = new OleDbConnection(sciezka_do_bazy);
         
           OleDbCommand cmd  = new OleDbCommand("select * from Tabela", con);

           con.Open();
           rdr = cmd.ExecuteReader();
           	
        	while (rdr.Read())
        	{
            	Console.WriteLine(String.Format("{0}", rdr[0]));
        	}
            
           con.Close();    	
        }
}
}

Błąd: System.Data.OleDb.OleDbException: Nie można znaleźć instalowalnego pliku ISAM. Komputer jest służbowy, nie mam praw administratora i być może nie ma tu czegoś zainstalowanego, ale niestety nie mam pojęcia czego. Bardzo proszę o pomoc

DibbyDum
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Polska, Kraków
0

Ścieżka powinna być w pojedynczym cudzysłowie bo jest tam spacja:
DataSource='C:\Users\szymon\Documents\SharpDevelop Projects\test.mdb'

S7
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 34
0

Niestety, ale nie pomogło. Przeniosłem na wszelki wypadek bazę do innego folderu tak by w ścieżce nie było spacji. Błąd nadal ten sam.

Marcin.Miga
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2794
0

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;
Przykład z http://www.connectionstrings.com/access/
Lepiej użyć starego, dobrego (bez przesady) OLEDB

S7
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 34
0

Działa! Dziękuje bardzo :-) A pół neta przeszukałem i wydawało mi się, że któregoś Jeta też przetestowałem

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.