0

所以我正在开发一个数据库程序,它需要使用 INSERT INTO 命令将日志插入数据库,但是执行查询后表仍然为空。请帮忙!谢谢~这是代码。

    //Predefined connection string
    OleDbConnection vcon = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\xxx\Desktop\data.mdb;Jet OLEDB:Database Password=xxx;");




    private void Login_Load(object sender, EventArgs e)
    {
        Log("StartUp", "System", "NULL", "System StartUp");
    }

    public void Log(string Type, string User, string Table_affected, string Remarks)
    {

        string NowDateStamp = string.Format("{0}/{1}/{2}", 
                              DateTime.Now.Day.ToString(), 
                              DateTime.Now.Month.ToString(), 
                              DateTime.Now.Year.ToString());
        string NowTimeStamp = string.Format("{0}:{1}:{2}",
                              DateTime.Now.Hour.ToString(),
                              DateTime.Now.Minute.ToString(),
                              DateTime.Now.Second.ToString());
        string tempSQL = string.Format("INSERT INTO 'Log' VALUES ('{0}', '{1}', '{2}', '{3}', '{4}', '{5}')",
                                        NowDateStamp,
                                        NowTimeStamp,
                                        Type,
                                        User,
                                        Table_affected,
                                        Remarks);
        vcon.Open();
        OleDbCommand vcom = new OleDbCommand(tempSQL, vcon);
        vcom.ExecuteNonQuery();
        MessageBox.Show("Done"); // <-- This MessageBox isn't even showing.
        vcon.Close();
    }

所以基本上程序会启动然后记录时间,但是它似乎对数据库没有做任何事情,任何人都可以帮助我吗?谢谢!

4

3 回答 3

6

执行查询会导致异常,但在某个地方会捕获并忽略该异常。

您在表名应该在的位置使用字符串文字。它应该只是标识符:

INSERT INTO Log VALUES ...

或方括号内的标识符:

INSERT INTO [Log] VALUES ...
于 2013-03-04T15:07:43.790 回答
0

除了其他人所说的之外,我猜你也有语法错误。您应该指定要将值插入到哪些列中。

INSERT INTO Log (<column1>,<column2>,...)
VALUES (<Value to insert into column1>, <Value to insert into column 2>,...)
于 2013-03-04T15:29:05.197 回答
0

替换这个:

INSERT INTO 'Log' VALUES 

有了这个:

INSERT INTO Log VALUES 
于 2013-03-04T15:08:29.280 回答