我们现在用delphi和oracle9i开发了一个小型的PDM,现在想实现对数据版本的管理。简单举例说就是:如果把数据库中的原始表比作一个word文档的话,每次对文档进行修改,都需要另存为一个新的版本。
我们的解决方案是:每次数据有个改动(增,删,改),则将数据表另存到指定的目录下,存为.dbf文件。当别人想查看这写版本的文件时再将.dbf文件导入oracle,然后用delphi控件访问这些数据。
请教高手们:.dbf文件的导入,导出怎么处理啊??如果哪位高手有更好的方案,麻烦不吝指教啊!!高分酬谢!!!
我们的解决方案是:每次数据有个改动(增,删,改),则将数据表另存到指定的目录下,存为.dbf文件。当别人想查看这写版本的文件时再将.dbf文件导入oracle,然后用delphi控件访问这些数据。
请教高手们:.dbf文件的导入,导出怎么处理啊??如果哪位高手有更好的方案,麻烦不吝指教啊!!高分酬谢!!!
dbf有一个单独的组件tdbf 在 www.sourceforge.net/projects/tdbf
var tablename:string;
begin
tablename:='test5.dbf';
adoquery1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=D:\dbf;Extended Properties=dbase 5.0;Persist Security Info=True';
try
begin
with AdoQuery1 do
begin
close;
sql.Clear;
sql.Add('select * into '+tablename+' from SP_SOFTUSER in [ODBC][ODBC;Driver=Microsoft ODBC for Oracle;UID=SPARE_PART;PWD=MANAGER;SERVER=O9IDB]');
ExecSQL;
end;
showmessage('成功导出为dbf文件.');
end
except
showmessage('导出失败!');
end;
end;这个程序可以执行,如果在oracle数据库中新建一张表,则能成功通过。但是如果不是新表的话总提示“找不到输入表或查询”,请高手帮帮忙啊!!跪求代码!!!
我确定表名决对正确,权限也是DBA了,但是执行时总出错:microsoft jet 数据库引擎找不到输入表或查询'SP_SOFTUSER'。确定它是否存在,以及它的名称的拼写是否正确。
跪求解决方案!!!在线等!!!高分酬谢!!!