Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 需要保存每次登录尝试的登录数据库,但出现语法错误_C#_Mysql_Database_Visual Studio_Ms Access - Fatal编程技术网

C# 需要保存每次登录尝试的登录数据库,但出现语法错误

C# 需要保存每次登录尝试的登录数据库,但出现语法错误,c#,mysql,database,visual-studio,ms-access,C#,Mysql,Database,Visual Studio,Ms Access,我正在试图保存日志。我有一个用户表和一个用户日志表。用户名是Userlog表中的外键。一对多关系(一个用户可以有多个Userlog)。我正试图保存它,但出现语法错误。另外,如果你能告诉我,如果代码是好的,或者它可以更有效 public bool log(string user) { OleDbConnection conn = new OleDbConnection(cs); conn.Open(); string date = DateTime.Now.ToStrin

我正在试图保存日志。我有一个用户表和一个用户日志表。用户名是Userlog表中的外键。一对多关系(一个用户可以有多个Userlog)。我正试图保存它,但出现语法错误。另外,如果你能告诉我,如果代码是好的,或者它可以更有效

public bool log(string user)
{
    OleDbConnection conn = new OleDbConnection(cs);
    conn.Open();

    string date = DateTime.Now.ToString();
    string query = "insert into UserLog(Username, TimeStamp) Values('"+user+"','"+date+"')";

    OleDbCommand cmd = new OleDbCommand(query, conn);
    //cmd.Parameters.Add("@1", OleDbType.Char, 20).Value = user;
    //cmd.Parameters.Add("@2", OleDbType.Char, 20).Value = DateTime.Now;

    try
    {
        cmd.ExecuteNonQuery();
    }
    catch (Exception)
    {
        throw;
    }

    return true;
}

insert
语句末尾附近有一个错误。替换为:

string query = "insert into UserLog(Username, TimeStamp) Values ('"+user+"','"+date+"');";

insert语句从不关闭最后一组括号。请使用参数,而不是临时生成sql字符串!它给我错误“插入语法错误”,即使最后一组括号,它仍然给我错误。我给出的直接值只是为了测试代码是否有效。您还可以检查查询中是否有附加的“.”靠近
数据
变量