| Forum: VB.NET |
Thema:
Variable überprüfen |
Von:
G. Guest (
08.08.2004 15:30) |
Ich habe eine Variable1. Diese soll mit Tabelle1.Spalte1 verglichen werden, ob sie darin schon vorhanden ist.
Das kann man ja mit Select COUNT(*) From Tabelle1 machen.
Jetzt habe ich einen nun Treffer. Wenn das der Fall ist, ist Variable1=Variable1+1.
Dies soll dann auch wieder überprüft werden, ob schon vorhanden in Tabelle1. Wenn ich erneut einen Treffer habe, dann wieder Variable1=Variable1+1 usw...
Aber wie programmiere ich sowas - Schleifen etc. ??? Habe keine Ahnung!
Ich habe mal was programmiert, was allerdings nicht richtig funktioniert. Hier mal der Code:
-----------------------------------------------------------
'hier wird Variable1 belegt
Dim dr_bez() As DataRow = ds_bez.Tables("beziehungen").Select()
idbez = dr_bez(i)("IDbez")
Sprung1: 'ist die Sprungmarke des GoTo
Dim sql_check As String = "Select COUNT(*) From vw_in_stamm_vorhanden Where IDbez='" & idbez & "' AND IDmat='" & idmat & "' "
Dim cmd_check As New SqlCommand(sql_check, planconn)
planconn.Open()
Dim check As Integer
check = cmd_check.ExecuteScalar
planconn.Close()
'Überprüfung, ob Variable1 in bestimmter Konstellation schon vorhanden ist
If check > 0 Then
idbez = dr_bez(i + 1)("IDbez")
GoTo Sprung1
End If
...
'jetzt kommt nur noch das Insert-Kommando
-----------------------------------------------------------
Die Abarbeitung dauert ewig, wenn eine Übereinstimmung in der DB schon vorhanden ist!!! Ich weiß nicht mehr weiter - bitte helft mir!
Danke, Rico.
PS.: Die Benutzung von GoTo war nur eine Ausweichlösung. Normalerweise macht man das ja nicht...
| Betreff |
Von |
Datum |
|
|
  |
Re: Variable überprüfen
| Hi,<br><br>wenn ich dich richtig verstehe, möchtest du eine neue freie Nummer ermitteln. <br><br>Warum ermittelst du nicht einfach die größte schon vorhandene Zahl in der Spalte mit<br><br>SELECT MAX(Spalte1)... |
 |
 |
 |
|
|
Achim
Schäfer
|
09.08.2004 13:10 |
|
|
  |
Re: Variable überprüfen
| Ein Goto! Holt den Exorzisten!<br><br>Hi Rico,<br>versuch es doch mal mit folgendem Code<br><br>planconn.Open() ' Das ständige öffnen und wieder schließen kostet viel Zeit und ist meistens nicht nötig<br><br>dim... |
 |
 |
 |
|
|
Klaas
Wedemeyer
|
09.08.2004 17:34 |
|
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!