我将如何对 .TPS 数据库进行批量记录删除?
我一直在尝试使用C# 中的 ODBC V4 Topspeed 驱动程序,但是每次执行删除命令时,程序都会开始挂起,或者如果我在 cmd.ExecuteNonQuery() 之后添加代码以关闭数据库 (cnn.Close())方法,程序崩溃并出现以下错误:程序“[12345] abcdefg.exe”已退出,代码为-1073741819(0xc0000005)“访问冲突”。. 注意:执行这些操作时关闭 Topscan。(我已经成功使用 SELECT 查询,所以连接字符串等是正确的)
通过 ODBC Topspeed 驱动程序的 SQL 命令示例:“DELETE FROM table WHERE column = '12345'”
删除命令示例:
public void deleteCommand(string sqlCommand)
{
try
{
string connectionString = database_a_string;
OdbcConnection cnn = new OdbcConnection(connectionString);
cnn.Open();
OdbcCommand cmd = new OdbcCommand(sqlCommand, cnn);
cmd.ExecuteNonQuery();
cnn.Close();
}
catch (Exception ex)
{
MessageBox.Show("Topspeed error: " + ex, "Delete Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
也许我可以改用 Topscan?但我只看到了一种单独删除记录的方法。该数据库有超过 900 000 条记录。
编辑:我能够使用相同的方法格式成功执行插入命令。我有预感 OBDC V4 Topspeed 驱动程序导致“访问冲突”错误。