从c#(.NET)插入记录到Visual Fox Pro db时产生的异常。

问题描述 投票:0回答:1

下面的代码用于从c#插入到Fox pro db,如果我在fox pro表上禁用插入触发器,则工作。

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表中启用了触发器,那么我就会收到 "功能不可用 "的错误信息。

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

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

谢谢你对这个问题的任何提示。

c# triggers oledb foxpro
1个回答
1
投票

在Insertlog()函数中是否有什么代码是OLEDB驱动不支持的?如果你有Visual FoxPro,那么在帮助文件中查找 "OLE DB Provider中不支持的Visual FoxPro命令和函数",并对照你的触发代码进行检查。

© www.soinside.com 2019 - 2024. All rights reserved.