Autor Beitrag
Vegeto
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Fr 07.03.14 13:13 
Hallo,

bin gerade dabei ein Programm zu entwickeln, es läuft ziemlich gut, habe keine Fragen zu irgendwelchen Anweisung etc. sondern habe mal eine Allgemeine Frage ob euch dieses problem bekannt ist und wenn ja wie Ihr das gelöst habt.

Also die Anwendung läuft ganz rund, bis auf kleine macken, diese wollte ich mittels Debugger überprüfen.
Ich setze mein Haltepunkt und drücke dann in Visual Studio 2010 die Taste F11 er startet nun drücke ich F10, Anwendung springt auf ich drücke auf den Button wo es Probleme gibt, er springt zum haltepunkt.
Bis jetzt alles schön und gut.
Nun möchte ich gucken was geschieht, und drücke F11 um jede einzelne Zeile anzusprechen.
Aufeinmal Springt er an einem SqlReader in einem Fehler rein, SQLException, Spaltenname ist ungültig heißt es.

KOMISCH!

Weil wenn ich die Anwendung mit STRG+F5 Starte und ich auf den Button drücke arbeitet er ganz normal! Ohne Fehlermeldung oder SQLException.

Wo ich mich frage WARUM?

Kann mir vielleich jmd helfen?

Lg


Moderiert von user profile iconTh69: Topic aus WinForms verschoben am Fr 07.03.2014 um 14:13
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4701
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Fr 07.03.14 13:19 
Wie ist dein Visual Studio eingestellt?
Öffne mal den Exception Dialog (Ctrl+D,E oder im Menu Debug/Exceptions) und schau nach wann der Debugger bei Exceptions hält.
Wenn da an vielen Exceptions Thrown angehackt ist dann hält der Debugger bei jeder Exception die geworfen wird auch wenn sie später im Code (muss nicht dein Code sein) stillschweigend behandelt wird und nicht weiter auffällt. Solche Stillen Exception gibt es reichlich im Framework und sind auch nicht immer im eigenen Code zu verhindern. Beim Debuggen hält aber der Debugger da wenn man gesagt hat das er das tun soll.


Zuletzt bearbeitet von Ralf Jansen am Fr 07.03.14 13:43, insgesamt 1-mal bearbeitet

Für diesen Beitrag haben gedankt: Vegeto
Vegeto Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Fr 07.03.14 13:34 
Danke Ralf Jansen,

ich habe es nun geschafft, also er gibt zwar den Fehler raus, aber ich kann diesen nicht nachvollziehen, da er mir sagt Ungültiger Spaltenname, und ich habe es jetzt zum 2547x durchgeguckt, es ist der selbe.
Egal ob ich [Spaltenname] oder nur Spaltenname nehme er sagt immer das selbe :/

Lg
Perlsau
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.03.14 16:08 
Es gibt etliche Ursachen, weshalb ein Spaltenname von einem DBMS als ungültig erkannt wird. Meist wird in diesen Fällen ein Spaltenname verwendet, der im eingesetzten DMBS geschützt ist, z.B. einem SQL-Befehl entspricht, wie z.B. Name oder Max usw. Gewöhnlich umgeht man dieses Problem damit, daß man im SQL-Befehl den problematischen Spaltennamen in Hochkommas einschließt. Die beste Lösung bestünde aber selbstverständlich darin, den Spaltennamen zu ändern.
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4701
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Fr 07.03.14 16:47 
Zeige Code, den Stacktrace und verrate uns was das genau für eine DB ist. Irgendwas mit lokalem File das beim debuggen in den Anwendungsordner kopiert wird?

Zitat:
daß man im SQL-Befehl den problematischen Spaltennamen in Hochkommas einschließt


Bei Microsoft nimmt man eckige Klammern []. Das scheint er ja schon versucht zu haben.