hallo, ich programmiere in ASP.Net oder C# allgemein gesprochen und als Datenbank nutze ich MSSQL.
Passt alles wunderbar, Software läuft einwandfrei. Manchmal möchte ich ein Statement optimieren und um nicht die kompletten Parameter einer Prozedur händisch füllen zu müssen, rufe ich die Software auf und fange mir mit dem Profiler das Statement.
Dieses kopiere ich mir dann in ein neues Fenster im Management Studio und führe es aus. Allerdings bekomme ich immer wenn ich Datumsfelder als Parameter habe ein Fehler beim Ausführen im Management Studio. "Fehler beim Konvertieren des varchar-Datentyps in datetime". Das Statement kann ich ausführen indem ich den Datumswert in ein deutsches Datum umschreibe.
so geht es nicht im Management Studio (so wird es im Profiler angezeigt)
so geht es im Management Studio
Das verstehe ich nicht ganz. Warum funktioniert das Ausführen in der Software. Wenn ich das "vermutlich gleiche" Statement rauskopiere und ausführe funktioniert es nicht mehr. Was könnte ich verändern damit das rauskopieren immer sofort funktioniert?
(Weil es hier schon andere Beiträge mit der Fehlermeldung gibt, die Parameter werden so übergeben
Auch so ist es nicht anders
Passt alles wunderbar, Software läuft einwandfrei. Manchmal möchte ich ein Statement optimieren und um nicht die kompletten Parameter einer Prozedur händisch füllen zu müssen, rufe ich die Software auf und fange mir mit dem Profiler das Statement.
Dieses kopiere ich mir dann in ein neues Fenster im Management Studio und führe es aus. Allerdings bekomme ich immer wenn ich Datumsfelder als Parameter habe ein Fehler beim Ausführen im Management Studio. "Fehler beim Konvertieren des varchar-Datentyps in datetime". Das Statement kann ich ausführen indem ich den Datumswert in ein deutsches Datum umschreibe.
so geht es nicht im Management Studio (so wird es im Profiler angezeigt)
PHP Code:
@datevon='2013-01-01 00:00:00',@datebis='2013-12-31 23:59:59'
PHP Code:
@datevon='01.01.2013 00:00:00',@datebis='31.12.2013 23:59:59'
(Weil es hier schon andere Beiträge mit der Fehlermeldung gibt, die Parameter werden so übergeben
PHP Code:
cmd.Parameters.AddWithValue("@datevon", datumvon);
cmd.Parameters.AddWithValue("@datebis", datumbis);
Auch so ist es nicht anders
PHP Code:
cmd.Parameters.Add("@datevon", SqlDbType.DateTime).Value = datumvon;
cmd.Parameters.Add("@datebis", SqlDbType.DateTime).Value = datumbis;
Comment