ODBC-Verbindung zu '{SQL Native Client}(schulelb002)' fehlgeschlagen.

Tech-Archive recommends: Fix windows errors by optimizing your registry



Hallo Elmar,
habe jetzt deine Anweisungen befolgt, immer noch leider ohne Erfolg, erhalte
folgende Fehlermeldung
ODBC-Verbindung zu '{SQL Native Client}(schulelb002)' fehlgeschlagen.
wobei schulelb002 der Server ist!
Muss ich etwa einen ODBC Driver am Server oder am Client installieren? Wäre
nicht ideal, aber wenn es
keine andere Lösung gibt?
Der Zugriff auf die Datenbank funktioniert an sich, denn die anderen Seiten
fuktionieren einwandfrei, dort wird halt nicht über odbc zugegriffen!

danke
Arnold


"Elmar Boye" <ElmarB@xxxxxxx> schrieb im Newsbeitrag
news:4s123qFp6sl3U1@xxxxxxxxxxxxxxxxxxxxx
Arnold Schmid <Schmida1@xxxxxxxxxxxxxxxxxxxxxx> schrieb ...
bin gerade bei einer kleinen asp .net Anwendung in welcher ich xls-Daten
in eine SQL Server 2005 Datenbank importieren möchte. Leider scheitere
ich
schon seit Stunden an diesem Aufruf!

Dim ExcelCommand As New System.Data.OleDb.OleDbCommand("INSERT INTO
[ODBC;Driver={SQL Server};Server=(server1);Database=database1;" & _
"Trusted_Connection=yes].[dbo.table1] SELECT * FROM [import$];",
ExcelConnection)
ExcelCommand.ExecuteNonQuery()
ExcelConnection.Close()

Dabei möchte ich nicht unbedingt odbc verwenden.

Daran ist nichts schlimmes. OleDb ist nicht etwa besser oder so...

Ich möchte einfach den nativen Driver

den kriegst Du indem Du {SQL Server} durch {SQL Native Client} ersetzt.

oder oledb verwenden .

Das geht nicht. Denn die verwendete Jet Engine kann nur mit
ODBC Treibern arbeiten.
Was vielleicht kurios klingen mag, aber daran liegt, dass das
Jet-Design aus den frühen 90ern stammt, wo von OleDb noch
niemand was wusste. Und zu mehr als einem Bereitstellen
eines Jet OleDb Providers ist es nie gekommen.

Eine Alternative wäre seitens des SQL Servers via OPENROWSET
oder OPENDATASOURCE direkt auf die Excel-Tabelle
zurückgreifen, z. B.

INSERT INTO dbo.table1(Spalte1, Spalte2, Spalte3)
SELECT Spalte1, Spalte2, Spalte3
FROM OPENDATASOURCE( 'Microsoft.Jet.OLEDB.4.0',
'Extended Properties=Excel 8.0;Data
Source="F:\MAPPE1.XLS"'')...[Tabelle1$]

Allerdings benötigst Du dafür wiederum zusätzliche Berechtigungen,
u. a. steht http://support.microsoft.com/?kbid=327489 im Wege.

Und wenn Du nicht weitere Zeit investieren willst, lasse es so wie
es ist.

Gruss
Elmar



.


Quantcast