Take the 2-minute tour ×
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It's 100% free, no registration required.

I would like to compare Sqlite databases with each other, both schema and data. I know that a rather crude method exists by comparing the database dumps with each other. But are ther any other methods as well? Especially from a command line environment. I know several tools for comparing databases exist, and I would like to know what sort of methodology they use.

share|improve this question
    
You want want to ask this over at DBA.SE instead. Maybe they have some interesting suggestions as well. –  haylem Jul 7 '12 at 18:26

6 Answers 6

RedGate offers a suite of tools to help with DB comparisons: http://www.red-gate.com/products/sql-development/sql-compare/

There is a tool to compare schemas from different DB's as well as a tool to compare the data from tables or from the result of a query. We use the data compare tool every time we update our database to ensure that queries often done by our product code return the same data in the same order, etc.

share|improve this answer
    
I already know that tool, but I can't use it. I'm in a command line environment and cannot rely on existing tools and packages. What I'd really like to know is that methodology or technique it may possibly use in comparing dbs. –  Apophenia Overload Jul 6 '12 at 20:13
    
RedGate Sql Compare and Sql Data Compare do not work with SQLite –  Brent Jul 22 '14 at 19:00

If you only need rough precision, the dump method is crude but does get the job done.

If you want a lot of precision, I have done a similar task using Python's SQLite module. (http://docs.python.org/library/sqlite3.html) I grabbed and directly compared alike rows in each table and wrote out changes to a file, with further post-comparison and UPDATEs done after all comparison was done. You can do similar comparisons with the schema for each "*.db" file.

share|improve this answer

RedGate Sql Compare and Sql Data Compare do not work on SQLite unfortunately.

SQLite Compare Utility http://www.codeproject.com/Articles/220018/SQLite-Compare-Utility works decent for schema differences, but wasn't very helpful for data differences in my situation.

I would give my arm if Beyond Compare added support for Sql Server and SQLite comparison.

share|improve this answer

Try using SchemaCrawler. SchemaCrawler is a free and open-source command-line tool that produces text (text, JSON, CSV, HTML) output that is designed to be diff-ed, using standard diff tools. It can compare both structure and data.

Sualeh Fatehi, SchemaCrawler

share|improve this answer
1  
Sualeh, thank you for disclosing your connection to SchemaCrawler. Not everyone does this. –  Kate Paulk Sep 22 '14 at 11:00
    
One thing I will note is that this post is identical to another post. The posts appear to be perfectly legitimate, just be careful about copy/pasting =) That being said, Kate is being polite. In reality, almost no one does it... I would venture to say 4 of every 5 warnings issued are for undisclosed astroturfing, so it is certainly refreshing to see someone being honest about their affiliations! –  corsiKa Sep 22 '14 at 23:41

Navicut sqllite tool seems better option. There is one feature for synchronization of sql lite databases. Data and schema both.

http://prntscr.com/7ps6ya

share|improve this answer

I have always loved using Scooter Software - Beyond Compare (limited to 2 links) to visually compare between folder, files etc. Group of them or single.

This should help with an easy to use Visual Compare.

Daniel has created a great BC File Extension Forum Link | How To on GitHub.

It uses simple export with command line to do compare SQLite DB.

I could not even post the Images / Screenshots. If someone can do so and add to this answer please do so.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.