Zum Inhalt springen

C#: ODBC Verbindung zu Excel


O_Neill

Empfohlene Beiträge

Also ich probiere gerade ein bisschen mit ODBC rum mit hilfe von C#.Net das im Visual Studio 2005 vorhanden ist.

Nun bekomme ich den Connectionstring irgendwie nicht hin!

        OdbcConnection dbconnection = new OdbcConnection("Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=C:\\Dokumente und Einstellungen\\Benutzer\\Eigene Dateien\\2007_1213 adressen buchhaltung.xls;DefaultDir=C:\\Dokumente und Einstellungen\\Benutzer\\Eigene Dateien");

        dbconnection.Open(); //öffnen der Verbindung

Es kommt immer folgende Meldung:

System.Data.Odbc.OdbcException wurde nicht behandelt.

Message="ERROR [HY000] [Microsoft][ODBC Excel Driver] Datenbank '(unbekannt)' konnte nicht geöffnet werden. Entweder wird die Datenbank nicht von Ihrer Anwendung erkannt, oder die Datei ist beschädigt.\r\nERROR [iM006] [Microsoft][ODBC Driver Manager] Fehler bei SQLSetConnectAttr-Aufruf für Treiber\r\nERROR [HY000] [Microsoft][ODBC Excel Driver] Datenbank '(unbekannt)' konnte nicht geöffnet werden. Entweder wird die Datenbank nicht von Ihrer Anwendung erkannt, oder die Datei ist beschädigt."

Source=""

ErrorCode=-2146232009

StackTrace:

bei System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)

bei System.Data.Odbc.OdbcConnectionHandle..ctor(OdbcConnection connection, OdbcConnectionString constr, OdbcEnvironmentHandle environmentHandle)

bei System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)

bei System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)

bei System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)

bei System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)

bei System.Data.Odbc.OdbcConnection.Open()

bei Versuchsprojekt.Form1.button1_Click(Object sender, EventArgs e) in C:\Dokumente und Einstellungen\Benutzer\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\Versuchsprojekt\Form1.cs:Zeile 24.

bei System.Windows.Forms.Control.OnClick(EventArgs e)

bei System.Windows.Forms.Button.OnClick(EventArgs e)

bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)

bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)

bei System.Windows.Forms.Control.WndProc(Message& m)

bei System.Windows.Forms.ButtonBase.WndProc(Message& m)

bei System.Windows.Forms.Button.WndProc(Message& m)

bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

bei System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

bei System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)

bei System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)

bei System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)

bei System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)

bei System.Windows.Forms.Application.Run(Form mainForm)

bei Versuchsprojekt.Program.Main() in C:\Dokumente und Einstellungen\Benutzer\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\Versuchsprojekt\Program.cs:Zeile 17.

bei System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)

bei System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)

bei Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()

bei System.Threading.ThreadHelper.ThreadStart_Context(Object state)

bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

bei System.Threading.ThreadHelper.ThreadStart()

Danke schonmal im Vorraus!

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Monat später...

Hier übrigens die Lösung:

             String strConn = @"Dsn=Excel Files;dbq="+oFD.FileName+";defaultdir=C:\\;driverid=1046;maxbuffersize=2048;pagetimeout=5";

             OdbcConnection objConn = new OdbcConnection(strConn);

             objConn.Open();

             OdbcDataAdapter adp = new OdbcDataAdapter("select * from [Sheet1$]", objConn);

             DataSet ds = new DataSet();

             adp.Fill(ds);

             dataGridView1.DataSource = ds.Tables[0];

             objConn.Close();

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 9 Monate später...
  • 2 Jahre später...

hey,

ich hab ne frage zu dem code snippet. Und zwar wird das ja jetzt in eine datatgridview ausgegeben. Ich möchte die daten aber in einem sting speichern. Jedoch steht in dem String bei mir immer nur "Table" drin und nicht meine eigentlichen daten.

Was mache ich falsch?

string datasource = ds.Tables[0].ToString();

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...