Delphi当前目录数据库未更新Ms Access

Delphi当前目录数据库未更新Ms Access,delphi,ms-access,Delphi,Ms Access,我在将DbLogSystem.mdb连接到程序时遇到问题 1) 当我尝试使用该程序插入/更新记录时,它将继续并成功执行, 2) 当我尝试使用MS Access重置/删除所有记录时,它将继续, 但当我运行程序时,数据/记录仍然存在 可能的错误是什么 提前谢谢 以下是可能导致问题的连接字符串: mydir := GetCurrentDir; ADOConnection_get_data.ConnectionString:= 'Provider=Microsoft.Jet.OLEDB.4.0;Jet

我在将DbLogSystem.mdb连接到程序时遇到问题

1) 当我尝试使用该程序插入/更新记录时,它将继续并成功执行, 2) 当我尝试使用MS Access重置/删除所有记录时,它将继续, 但当我运行程序时,数据/记录仍然存在

可能的错误是什么

提前谢谢

以下是可能导致问题的连接字符串:

mydir := GetCurrentDir;
ADOConnection_get_data.ConnectionString:= 'Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=puzzle33;Data Source='+ mydir +'\DbLogSystem.mdb;Persist Security Info=False';

或者是否有任何方法将我的.Exe程序链接到具有相同路径文件夹的数据库?

我相信您可以使用相对路径始终将您的.Exe程序链接到相同文件夹上的数据库

ADOConnection_get_data.ConnectionString:= 'Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=puzzle33;Data Source=.\DbLogSystem.mdb;Persist Security Info=False'
正如Zam所说,检查您是否在Release和Debug文件夹中交替使用两个不同的数据库


另外,您确定要提交更改吗?。您可能正在使用CommitUpdates(因此您的更改从未真正到达数据库),或者您可能有一个从未提交的活动事务(因此在退出应用程序时回滚)

exe文件位于Win32\Debug文件夹中?可能您有两个数据库,一个在项目“根”文件夹(位于源文件所在的位置)中,另一个在Win32\Debug文件夹中?我将其放在exe的同一文件夹中。我将数据库放在exe的同一文件夹中。并使用给定的代码。我使用access手动删除记录,但未生效。。解决这个问题的建议方法是什么?再次感谢。您没有收到任何错误?,您只是一直看到从Access?删除的记录?。在这种情况下,您可能没有任何错误,但您使用的是Access和Delphi上的两个不同数据库(请记住,Delphi创建发布和调试文件夹,应用程序在其中加载数据库)。此外,您可能正在删除这些记录,但在Delphi上看不到,因为数据已经加载,您必须刷新它。基本上,如果您的应用程序正在显示一个表,并且您通过另一个应用程序修改了该数据,则您需要在应用程序上重新加载该数据以查看差异(调用数据集上的刷新方法)。