c# - 从 c#(.NET) 向 Visual Fox Pro db 插入记录时抛出的功能不可用异常
问题描述
如果我禁用 fox pro 表上的插入触发器,则从 c# 插入到 Fox pro db 的以下代码有效。
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 表中启用触发器,那么我收到错误为“功能不可用”在 fox pro 表上应用的插入触发器如下
insertlog("terms",RECNO(),"I")
我能够从 Visual Fox pro 将记录插入到 fox pro 表中,并且触发器可以将日志记录添加到其他表中。
感谢您对此的任何提示。
解决方案
Insertlog() 函数中是否有 OLEDB 驱动程序不支持的代码?如果您有 Visual FoxPro,则在帮助文件中查找“OLE DB 提供程序中不支持的 Visual FoxPro 命令和函数”并检查您的触发器代码。
推荐阅读
- javascript - 来自外部 js 文件的 D3 SVG
- wordpress - 如何使用 woocommerce wordpress 在运输方式中添加自定义字段
- ios - Swift:动画拉伸和收缩图像
- matplotlib - pycharm 中 python 3 中的 matplotlib 缺少自动完成功能(但对于 python 2.7 它有效)
- git - Git 克隆适用于个人访问令牌,但不适用于 Git 推送
- rust - 是否有任何编译器标志强制有符号整数溢出的未定义行为?
- javascript - 有什么方法可以用 bootstrap 4 制作下推式内容导航栏
- go - 如何在golang中拆分字符串并找出零索引处的值?
- c# - _signInManager.SignOutAsync() 不会删除 OAuth cookie
- google-cloud-sql - 如何修复:Google Cloud SQL 导出出现 403 错误