ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
375
375
EMPFEHLEN
-
Hallo,
ich glaube ja ich stehe ein wenig auf dem schlauch, auf jeden Fall komme ich nicht weiter.
Ich lese eine Access Tabelle aus und bekomme 3 Spalten in einer Zeile zurück Diese 3 einzelnen Werte möchte ich nun gern irgendwie per return zurückschicken. Wie kann ich das realisieren?
Kann auch alles als String zurückschicken, doch wie zerlege ich den String in der aufrufenden klasse?
Besten Dank
Markus
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
Public Shared Function Request3(ByVal mySelectQuery As String) As Array '== Connect to DB == Dim myConnString As String Dim myReturnArray(3) As String myConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb" Dim myConnection As New OleDbConnection(myConnString) Dim myCommand As New OleDbCommand(mySelectQuery, myConnection) myConnection.Open() Dim myReader As OleDbDataReader myReader = myCommand.ExecuteReader() ' Always call Read before accessing data. If myReader.HasRows Then Do While myReader.Read() 'very dirty - temporary solution 'Console.WriteLine(vbTab & "{0}", myReader.GetString(0)) myReturnArray(0) = myReader.GetString(0) myReturnArray(1) = myReader.GetString(1) myReturnArray(2) = myReader.GetString(2) Loop Else Console.WriteLine("No rows returned.") End If ' always call Close when done reading. myReader.Close() ' Close the connection when done with it. myConnection.Close() Return myReturnArray(3) End Function
Der gepostete Code funktioniert natürlich nicht, hatte als Rückgabe wert erst String, aber das klappt nicht....Geändert von JoeBloggs (28.06.05 um 00:21 Uhr) Grund: Ergänzung
-
hi,
warum dimensionierst du myReturnArray(3) als String?
dann ist klar das du einen String zurück bekommst und
kein Array ...
mach doch:
Dim myReturnArray(3) As ArrayChMaster: Projektseite
-
28.06.05 11:35 #3
- Registriert seit
- Jan 2004
- Ort
- Paderborn
- Beiträge
- 1.210
Ehm, nein!hi,
warum dimensionierst du myReturnArray(3) als String?
dann ist klar das du einen String zurück bekommst und
kein Array ...
mach doch:
Dim myReturnArray(3) As Array
myReturnArray ist natürlich ein Array, auch wenn es als String deklariert wurde.
Deklariert man ein Array als String, besitzen nur die einzelnen Dimensionen den Datentyp String. Das ist also so schon korrekt.
Nur:
Wenn du myReturnArray(3) zurücklieferst, dann ist das natürlich ein String. Es ist schließlich nur die 3 Dimension eines als String deklarierten Arrays.Code :1 2 3 4 5 6 7
Public Shared Function Request3(ByVal mySelectQuery As String) As Array ... Dim myReturnArray(2) As String 'Du brauchst nur 3 Dimensionen ... Return myReturnArray ... End Function
Du musst schon das ganze Array zurückliefern!
Du könntest auch mit Datasets, Datatables bzw. Datarows arbeiten und diese dann als Rückgabewert der Funktion liefern. Sieht auf den ersten Blick vielleicht komplizierter aus, ist es aber nicht - wohl eher leichter.
Und wenn .NET solche tollen Objekte liefert, kann man sie auch ruhig benutzen.
Du kannst es dir ja mal angucken: System.DataGeändert von Julian Maicher (28.06.05 um 11:40 Uhr)
-
Hi,
danke euch beiden, habe das problem mittlerweile über ein Objekt geregelt und das UML Diagramm so ein wenig ausgetrickst. Ich werde das mit dem Array aber auch nochmal ausporobieren, man lernt ja nie aus.
Gruss
markus
Ähnliche Themen
-
Array Return
Von Pherseus im Forum JavaAntworten: 1Letzter Beitrag: 13.06.07, 17:00 -
gsoap Array als return Parameter
Von Hirnschneck im Forum C/C++Antworten: 1Letzter Beitrag: 27.04.07, 11:13 -
2 strings in ein Array + return
Von Fridulin im Forum .NET ArchivAntworten: 2Letzter Beitrag: 14.03.05, 12:44 -
SOAP - Array als Return Datentyp
Von jenno im Forum PHPAntworten: 1Letzter Beitrag: 08.02.05, 12:35 -
Aus Funktion per return ein array zurückgeben
Von DJauie im Forum PHPAntworten: 1Letzter Beitrag: 28.05.04, 14:12





Zitieren
Login





