Access数据库引擎无法更新表中的数据

时间:2015-05-02 23:33:37

标签: c# sql ms-access

我试图在C#的GUI中向表Project中插入一个新行。当我点击"创建项目"并运行该方法,此错误显示:

  

未处理的类型' System.Data.OleDb.OleDbException'   发生在System.Data.dll

中      

其他信息:Microsoft Office Access数据库引擎   无法更新Project中的数据。

我的数据库中有一些触发器,但我不认为这是问题的原因。当我在Visual Studio中调试程序并将我的SQL语句直接插入Access时,它可以正常工作,但出于某种原因,当我使用OleDbConnection时它会混乱。

这是SQL语句:

INSERT INTO Project (projectType, projectStatus, projectStartDate, projectDueDate, projectRate, clientNo, accountNo) 
VALUES ('State Audit', 'In-Progress', #5/2/2015#, #5/31/2015#, 125, 8, 18);

这是我正在使用的代码:

public void Connect(string sql)
{
    try
    {
        dbConn = new OleDbConnection(connectionString);
        dbConn.Open();
        cmd = new OleDbCommand(sql, dbConn);
        cmd.ExecuteNonQuery();
        dbConn.Close();
    }
    catch
    {
        MessageBox.Show("Invalid Connection");
    }
}

1 个答案:

答案 0 :(得分:0)

我在使用Delphi应用程序更新Access表时遇到了类似的问题。我发现问题是数据宏。

我创建了表,并且最初能够使用Delphi应用程序更新并插入而没有问题。然后我将AfterUpdate数据宏分配给表。这导致我收到类似的错误,虽然它在Access中工作得很好。删除宏并没有解决问题。我最终删除了表并重新创建它。这解决了这个问题。幸运的是,我只是在测试数据宏是否适用于我的应用程序。