从 c#(.NET) 向 Visual Fox Pro 数据库插入记录时抛出的功能不可用异常

Feature is not available exception thrown on inserting records to Visual Fox Pro db from c#(.NET)

如果我在 fox pro 上禁用插入触发器,则以下用于从 c# 插入 Fox pro 数据库的代码有效 table。

try
{
    string query = @"insert into TERMS (VENDOR,TERMINAL,TERM) values(?,?,?)";
    OleDbConnection sourceConn = new OleDbConnection(@"Provider=VFPOLEDB.1;Data Source=E:\repos\Database\log");
    using (OleDbCommand cmd = new OleDbCommand(query, sourceConn))
    {
        cmd.CommandType = CommandType.Text;
        cmd.CommandTimeout = 1000;
        OleDbDataAdapter sqlDataAdapter = new OleDbDataAdapter();
        sourceConn.Open();
        cmd.Parameters.AddWithValue("?", "sws1");
        cmd.Parameters.AddWithValue("?", "sa1");
        cmd.Parameters.AddWithValue("?", "ds1");
        cmd.ExecuteNonQuery();
        sourceConn.Close();
    }
}
catch (Exception ex)
{

}

如果我在 Fox pro table 中启用触发器,那么我会收到错误 "Feature not available" 在fox pro table上应用的插入触发器如下

insertlog("terms",RECNO(),"I")

我可以从 Visual Fox pro 向 fox pro table 插入记录,触发器可以将日志记录添加到其他 table。

感谢您对此的任何提示。

Insertlog() 函数中是否有任何 OLEDB 驱动程序不支持的代码?如果您有 Visual FoxPro,则在帮助文件中查找 'Unsupported Visual FoxPro Commands and Functions in OLE DB Provider' 并检查您的触发代码。