2013-08-15 29 views
6

Tôi đang tìm một tiện ích dòng lệnh để xác thực cơ sở dữ liệu SQLite. Tôi chạy vào một tình huống trong một số di truyền mã nơi một ứng dụng không khởi động vì một nỗ lực để truy cập vào một cơ sở dữ liệu sản xuất các lỗi sau:Có tiện ích dòng lệnh nào để xác thực cơ sở dữ liệu SQLite trong Linux không?

database disk image is malformed 

Vì vậy, tôi cần phải cụ một số mã xác nhận trong các ứng dụng. Ngoài ra, mặc dù, tôi cần một công cụ mà tôi có thể chạy từ dấu nhắc Linux để cho tôi biết đơn giản nếu cơ sở dữ liệu bị hỏng hay không.

Cảm ơn

+0

Yeah, nó được gọi là 'sqlite3' ... –

Trả lời

9

Bạn có thể làm một cái gì đó như thế này:

sqlite3 database.db "PRAGMA integrity_check" 
+0

chính xác những gì tôi "m tìm cám ơn.! – linsek

6

Bạn có thể sử dụng PRAGMA integrity_check trên cơ sở dữ liệu.

Nếu cơ sở dữ liệu bị lỗi, bạn có thể sử dụng lệnh SQLite này:

cd $DATABASE_LOCATION 
echo '.dump'|sqlite3 $DB_NAME|sqlite3 new_repaired_$DB_NAME 
mv $DB_NAME corrupt_$DB_NAME 
mv new_repaired_$DB_NAME $DB_NAME 
Các vấn đề liên quan