如何恢复被删除的数据源码? [英] How can i recover deleted data from sqlite?

查看:292
本文介绍了如何恢复被删除的数据源码?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要恢复被删除的记录,并从SQLite的数据库文件放置的数据,

I want recover deleted record and dropped data from SQLite db file,

我检查我的数据库文件,文本编辑器,我看到了下降的数据仍然存在..

I check my db file with text editor and i saw dropped data is still there..

我用 SQLite3.dll(在C#)但我不能老是发现一些财产公开分贝放置的数据或...

I'm using SQLite3.dll (in c#) but i can`t find something property for open db with dropped data or ...

有没有帮助我的图书馆吗? ?或者一些简单的代码,从sqlite的数据库文件恢复数据

Is there any library for helping me? or something simple code for recovering data from sqlite db file?

修改1:

我试图找到一个数据恢复库或程序源码..很多searchs我发现的 http://www.devart.com/dotconnect/sqlite/docs/Devart.Data.SQLite~Devart.Data.SQLite.SQLiteDump.html

i try to find a data recovery library or program for sqlite.. after many searchs i found http://www.devart.com/dotconnect/sqlite/docs/Devart.Data.SQLite~Devart.Data.SQLite.SQLiteDump.html

SQLiteConnection.Open(); 
SQLiteDump sqSqlDump = new SQLiteDump(); 
sqSqlDump.Connection = SQLiteConnection1; 
sqSqlDump.IncludeDrop = true;                          //<<-- check here
sqSqlDump.Backup(); 
StreamWriter stream = new StreamWriter("d:\\dump.dmp"); 
stream.WriteLine(sqSqlDump.DumpText); 
stream.Close(); 

这是我可以使用 IncludeDrop 为后盾财产数据给我,但这个库是不是免费的,我不能用它..我想找到免费的图书馆或程序...

that i can use IncludeDrop property for backing data to me but this library is not free and i cant use it.. i like to find free library or program...

推荐答案

这是可能的,至少部分,一经录用,(非常昂贵)的数据恢复公司这将通过分析二进制文件中恢复数据。你可能不能够做自己,因为,正如其他人所说,SQLite的,当你删除记录永久删除数据,这是真的,因为在SQLite的数据删除操作涉及覆盖文件中描述那里的数据的元数据。数据是和它是如何与其他数据

It is possible, at least partially, by hiring a (very expensive) data recovery firm which would recover the data by analysing the binary file. You will probably not be able to do it yourself because, as others have said, "SQLite deletes data permanently when you delete records" and that is true, because the data deletion operation in SQLite involves overwriting the metadata in the file describing where the data is and how it is related to other data.

零件仍可能物理上的文件,但在

Parts of the data might still physically be in the file but:


  • 来该数据的指针(sqlite的使用b树)都不见了,文件区域被标记为在metedata

  • 在过程中自由空间使用数据库,一些空间可能已被覆盖,现在包含垃圾。

如果您有没有什么的做接下来的几个月里,你可以通过分析SQLite的文件结构,并运用这些知识去尝试猜测,其中的可能的已经在文件中最终被删除之前的数据(意思是,它的元数据被覆盖)启动所以执行恢复。你需要从这里开始: http://www.sqlite.org/fileformat.html

If you have have nothing to do for the next couple of months, you may start by analysing the SQLite file structure and applying that knowledge to try guessing where the data might have ended up in the file before it was deleted (meaning, its metadata was overwritten) and so perform the recovery. You need to start here: http://www.sqlite.org/fileformat.html .

这篇关于如何恢复被删除的数据源码?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆