Insert DateTime in Sql Server 2008, C#
Habe ich versucht, dieses Recht zu bekommen für über 2 Stunden, so dass jede Hilfe wird sehr geschätzt
public void setAppointment(int studentID, DateTime appt)
{
connection.Open();
string sqlStatement3 = "UPDATE dbo.students SET appointmentDate = '" + appt.Date.ToString("yyyy-MM-dd HH:mm:ss") + "' WHERE ID = " + studentID + ";";
OleDbCommand updateCommand = new OleDbCommand(sqlStatement3, connection);
updateCommand.ExecuteNonQuery();
connection.Close();
}
Also im Grunde, was das tut, ist das einfügen eines datetime in eine sql-server-Tabelle zu halten das gleiche format, den Monat und den Tag zu vermeiden, regionale Einstellungen in die Quere.
Das problem ist nur, dass die Zeit bleibt auf 00:00:00. Obwohl, wenn ich Debuggen Sie den code, 'Termin' zeigt 28/06/2013 09:30:00
- SQL-Injection-Alarm Sie sollten nicht verketten Sie zusammen Ihre SQL-Anweisungen - verwenden Sie parametrisierten Abfragen statt zur Vermeidung von SQL-injection
Du musst angemeldet sein, um einen Kommentar abzugeben.
Linie 5.
Ändern
zu
versuchen unter
ABER!
Ihnen sagen, es ist der sql server aber warum Sie mit
OleDbCommand
?versuchen weiter unten, wenn es ist sql-server
SqlConnection / SqlCommand
anstatt die OLE DB-Zeug....Ich hoffe, Sie haben entschieden, Ihr problem aus dem vorherigen post und ich Stimme SQL-Anweisungen werden mit den Parametern.
Wenn Sie eine Anwendung Datum /Uhrzeit-format fixiert ist, dann schadet es nicht, hart zu codieren, aber es würde gut sein, code zum abrufen von Datum-Uhrzeit-format von Ihrer web.config-Datei. Dies wird helfen, Ihren code zu gleichen konsistenten Gesamtkonzept.
Statt
Zu Spät, Aber für deine Frage : Versuchen Sie den folgenden code ein.