如何把paradox 7.0的表原封不动的备份出去和导进来(100分)

  • 主题发起人 主题发起人 boyxiang
  • 开始时间 开始时间
B

boyxiang

Unregistered / Unconfirmed
GUEST, unregistred user!
偶最近写一管理系统, 要求有数据的导出和导入. 偶用的是paradox 表,尝试了以下方法:
1. 使用batchmove但发现它会把auto increment的字段重新从1开始计算, 由于这个字段在我的程序中是key, 有大用处.故失败.
2. 想直接拷贝文件, 发现有*.db, *.px, *.mb, *.val等等, 不知如何是好. 我删除了val文件, 发现程序还能正常运行. 到底哪些文件是必需的呢?
3. 如何把导出的文件的重新导入? 拷贝文件吗? 哪位大虾能告诉我用何函数去查找某目录下是否存在某文件?
// bow
 
2。把*.db备份了应该没问题
3。用FindExists判断文件是否存在,可用CopyFile复制文件,
 
2.统统要copy ,都有用如*.val一致性校验文件,*.mb储存memo字段的内容。。。
都有用。*.val不要删
 
agree hubdog, only db is not enough for index and data intergraty
hubdog:have u received my mail?
 
to cj:
yes, i found your crack only for power designer 6.0 but i have
found a method to crack power designer 7.0(very easy,xixi). thank
you ,i have give you 300 points and mail you .do you receive it ?:)
 
呵呵,
你也遇上这个问题。

介绍一下amo过去的处理方法,(不要笑;-)
反正所有的数据全放在/db下,
1、先在dos下用
dir /db /o /b /s >dblist.txt
得到所有文件的列表。

2、用编辑软件对dblist.txt处理,比如去掉驱动器符号等
3、剩下的就是所有文件的纯列表了,自己程序中再处理就是了。
 
我有一个构件,是专找某种类型的文件或所有的文件,包括子目录
 
偶用amo的方法试了一下, 发现里面竟然有一个dbdwork.ini文件.
这又如何是好?
还想问一下:
1. 为什么有的表有*.val文件.而有的表没有.
当偶用tbatchmove时,他只生成了*.db, *.mb, *.px文件, 
*.val不见了.
2. 在程序运行中,会不会动态生成某种数据库文件.
从而只能动态获得当前文件个数和文件名从而备份出去.
也就是说: amo的方法每次备份都要在后台做一次还是
只要在设计时做一次?
3. 这是我第一次在这里发问,得到了大虾们的指点,
非常感动。

ps: 熬夜写程序,四周静悄悄的,只有硬盘的声音。
全身疲倦,但不得不坚持着。
 
嘿嘿,
不用,
只需一次,
设计完成时做一次。
dbdwork.ini就可以删掉了;-)

你需要动态创建什么表?
如果是程序的临时数据就无所谓了。
 
copyfile不行吗?
 
copyfile 不是不行, *.ini要拷贝吗?
 
呵呵, 干脆copydirectory不就可以了:-)
shellapi.shfileoperation.
 
我要把/db目录下的表一张一张的导出.
所以, copydirectory时不行的.
 
用FindFirst,FindNext一个一个CopyFile
 
偶决定copyfile了, 但问题又来了.
我怎么才能知道database file放在哪里呢?
也就是说, 怎么根据databaseName获知它的绝对路径?
 
呵呵,好象BDE里就有这个属性,你查一下就知道了
 
lenny, 能详细一点吗?
 
简单!
你用的是Paradox数据库吧?

1、TBDEDataSet.Database属性得到一个TDatabase
就是当前DataSet使用的Database组件

2、TDatabase.Directory属性就是TDatabase组件的工作目录
只对Paradox和dBASE有效
 
的确 paradox 的databasename属性可以是他所在的目录.而不用
别名.
 
多人接受答案了。
 
后退
顶部