我正在使用DAO在Access数据库上执行SQL语句。如果我使用的是VBA,则如果更新查询失败,则可以使用dbFailOnError引发错误,如下所示:

function updateTable(db as DAO.Database) as boolean

 on error goto errHandler
 db.execute "update testTable set name='xyz' where name='abc'",dbFailOnError
 updateTable=true
 exit function

 errhandler:
  updateTable=false
  on error goto 0

end function


如何使用.NET Interop通过dbFailOnError?似乎等效的是:

using Dao = Microsoft.Office.Interop.Access.Dao;
namespace DatabaseFunctions
{
    public class Updater
    {
        public bool updateTable(Dao.Database db)
        {
            try
            {
             db.Execute("update testTable set name='xyz' where name='abc'",
                         dbFailOnError);
             return true;
            }
            catch
            {
             return false;
            }
        }
    }
}


但是,我在哪个命名空间中找到dbFailOnError?它不在Dao中。

最佳答案

dbFailOnErrorDAO枚举的成员,RecordsetOptionEnum ...因此请尝试DAO.RecordsetOptionEnum.dbFailOnError

关于c# - 如何使用C#互操作传递dbFailOnError参数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15142192/

10-09 01:08