Benutzer mit den meisten Antworten
Konsolenanwendung bleibt ohne Fehlermeldung stehen

Frage
-
Hallo, NG,
ich habe eine Konsolenanwendung, die nacheinander 5 SQL-Statements ausführen soll. Diese Statements werden von der Sub Main nacheinander aufgerufen.
Die Anwendung soll 5 T-SQL-Statements (Q1 - Q5) nacheinander ausführen. Diese sehen alle aus wie die nachstehende:
Sub Q1()
'Daten aus der alten Datenbank werden aus der View vAddresses in der neuen Datenbank gezogen.
Dim con As SqlConnection = New SqlConnection(My.Settings.akt_Con)
Dim SQL_Befehl As String = My.Settings.Q1
Try
Dim cmd As DbCommand = New SqlCommand(SQL_Befehl, con)
cmd.Connection = con
con.Open()
cmd.ExecuteNonQuery()
Console.ReadLine()
Catch ex As Exception
Console.WriteLine("Fehler: {0}", ex.Message)
Finally
con.Close()
Console.WriteLine("fertig")
End Try
Console.ReadLine()End Sub
Der Connectionstring stimmt jetzt (ist jedesmal der gleiche, die SQL-Statements stehen auch als String in den Einstellungen und wurden vorab natürlich im Managementstudio getestet.
Was mich besonders irritiert: das erste Statement wird ausgeführt, dabei werden Adressen in die erste Tabelle eingefügt, dann bleibt die Konsole aber einfach stehen, keine Fehlermeldung, nichts sonst. Vielleicht könnt Ihr mir da einen Tipp geben, wo da das Problem sein könnte?
Gruß aus München
Susanne
Antworten
-
Hallo Susanne,
Der Connectionstring stimmt jetzt (ist jedesmal der gleiche, die SQL-Statements stehen auch als String in den Einstellungen und wurden vorab natürlich im Managementstudio getestet.
Was mich besonders irritiert: das erste Statement wird ausgeführt, dabei werden Adressen in die erste Tabelle eingefügt, dann bleibt die Konsole aber einfach stehen, keine Fehlermeldung, nichts sonst. Vielleicht könnt Ihr mir da einen Tipp geben, wo da das Problem sein könnte?
nur um sicher zu gehen, aber Dir ist schon bewusst und gewollt, dass die Anweisung Console.ReadLine() auf eine Eingabe von Dir wartet, genauer eine Zeilenumschaltung (Return)?
Vielleicht klärender:
Sub Q1() 'Daten aus der alten Datenbank werden aus der View vAddresses in der neuen Datenbank gezogen. Dim con As SqlConnection = New SqlConnection(My.Settings.akt_Con) Dim SQL_Befehl As String = My.Settings.Q1 Try Dim cmd As DbCommand = New SqlCommand(SQL_Befehl, con) cmd.Connection = con con.Open() cmd.ExecuteNonQuery() Console.WriteLine("Erfolgreich ausgeführt.") Catch ex As Exception Console.WriteLine("Fehler: {0}", ex.Message) Finally con.Close() End Try Console.WriteLine("Eingabe um fortzufahren...") Console.ReadLine() End Sub
Thorsten Dörfler
Microsoft MVP Visual Basic
vb-faq.de- Als Antwort markiert Thorsten DörflerModerator Samstag, 7. August 2010 14:59
Alle Antworten
-
Hallo Susanne,
Der Connectionstring stimmt jetzt (ist jedesmal der gleiche, die SQL-Statements stehen auch als String in den Einstellungen und wurden vorab natürlich im Managementstudio getestet.
Was mich besonders irritiert: das erste Statement wird ausgeführt, dabei werden Adressen in die erste Tabelle eingefügt, dann bleibt die Konsole aber einfach stehen, keine Fehlermeldung, nichts sonst. Vielleicht könnt Ihr mir da einen Tipp geben, wo da das Problem sein könnte?
nur um sicher zu gehen, aber Dir ist schon bewusst und gewollt, dass die Anweisung Console.ReadLine() auf eine Eingabe von Dir wartet, genauer eine Zeilenumschaltung (Return)?
Vielleicht klärender:
Sub Q1() 'Daten aus der alten Datenbank werden aus der View vAddresses in der neuen Datenbank gezogen. Dim con As SqlConnection = New SqlConnection(My.Settings.akt_Con) Dim SQL_Befehl As String = My.Settings.Q1 Try Dim cmd As DbCommand = New SqlCommand(SQL_Befehl, con) cmd.Connection = con con.Open() cmd.ExecuteNonQuery() Console.WriteLine("Erfolgreich ausgeführt.") Catch ex As Exception Console.WriteLine("Fehler: {0}", ex.Message) Finally con.Close() End Try Console.WriteLine("Eingabe um fortzufahren...") Console.ReadLine() End Sub
Thorsten Dörfler
Microsoft MVP Visual Basic
vb-faq.de- Als Antwort markiert Thorsten DörflerModerator Samstag, 7. August 2010 14:59