Forum: ADO.NET |
Thema:
DB und Webservice |
Von:
G. Guest (
07.10.2005 14:07) |
Hallo,
ich habe ein Problem mit der Datenbankanbindung in Kombination mit
Webservices.
Wenn ich eine normale Windows-Applikation schreibe und mich per OLEDB
zu meiner Postgres-DB verbinde läuft alles wunderbar. Sobald ich aber
versuche die gleiche Syntax in einem Webservice zu verwenden kommt
folgender Fehler:
System.Data.OleDb.OleDbException: No error information available:
E_NOINTERFACE(0x80004002).
at System.Data.OleDb.OleDbDataReader.ProcessResults(Int32 hr)
at System.Data.OleDb.OleDbDataReader.NextResult()
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal
(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior
behavior)
at System.Data.OleDb.OleDbCommand.ExecuteReader()
at MariosWebServiceTest.Service1.DatasetDB() in
c:\inetpub\wwwroot\MariosWebServiceTest\Service1.asmx.vb:line 69
Das ist mein Quellcode:
<WebMethod()> _
Public Function StringDB() As String
' Verbindungszeichenfolge zusammensetzen
Dim connStr, i As String
connStr = "Provider=PostgreSQL.1;User
ID=postgres;Password=xxxx;Data Source=localhost;Location=DB1;Extended
Properties="
' Verbindung zur Datenbank herstellen
Dim conn As New OleDbConnection(connStr)
conn.Open()
' SQL-Kommando erstellen und ausführen
Dim sql As String
sql = "SELECT * FROM test1"
Dim cmd As New OleDbCommand(sql, conn)
Dim myDataReader As OleDbDataReader
myDataReader = cmd.ExecuteReader()
Do While myDataReader.Read()
i += " " & myDataReader.GetString(0)
Loop
myDataReader.Close()
Return i
End Function
Beim Debuggen habe ich festgestellt, dass die Exception erst auftritt,
wenn der Reader oder auch ein Filler (anderes Beispiel) ausgeführt
wird.
Brauche Hilfe.
Danke
Gruß maccap
Betreff |
Von |
Datum |
|
|
Re: DB und Webservice
Hallo, wenn ich das mit dem npgsql-Treiber mache, dann funzt das. weiß einer wieso? |
|
|
|
|
|
G.
Guest
|
08.10.2005 21:42 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!