我有以下代码:
private void saveDT()
{
MySqlConnection myConn = new MySqlConnection(Common.myConnection);
myConn.Open();
string sLastLogin = DateTime.UtcNow.ToString("dd.MM.yyyy HH:mm:ss");
MySqlCommand mySqlCmd = new MySqlCommand("UPDATE ha_system.tblaccounts SET lastlogin='" + DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss") + "' WHERE name='" + Common.ActiveUser + "'", myConn);
try
{
mySqlCmd.ExecuteNonQuery();
}
catch (Exception ex)
{
MessageBox.Show("Fehler: " + ex.Message);
}
finally
{
}
}
但时间和日期只在数据库列“lastlogin”中的第二次登录后保存。
为什么?我能做什么来解决这个问题?
最佳答案
除了关于避免SQL注入的其他注释外,您不需要从.NET向MySQL服务器中获取DateTime值,您可以使用内置函数并进行如下查询:
"UPDATE ha_system.tblaccounts SET lastlogin=NOW() WHERE ..."