SQLite
 sql >> база данни >  >> RDS >> SQLite

Експортирайте цяла база данни на SQLite в SQL файл

Командният ред на SQLite предоставя няколко метода за експортиране или архивиране на цяла база данни. Един от тях включва .dump команда точка.

.dump командата ви позволява да конвертирате цяла база данни в един ASCII текстов файл. С други думи, той изобразява цялата база данни като SQL. Текстовият файл съдържа всички SQL изрази, необходими за създаване на таблици, вмъкване на данни и т.н.

Можете също да използвате .dump за да създадете компресиран файл. Очертавам и двата метода по-долу.

Експортиране като SQL

Можете да използвате .dump във връзка с .output или .once за да експортирате цялата база данни в .sql файл.

Този файл ще съдържа всички SQL изрази, необходими за реконструкция на базата данни (включително създаване на всички таблици, вмъкване на всички данни и т.н.).

Ето един пример:

.once Store.sql
.dump

В този случай използвах .once команда. Това просто насочва резултатите от следващата команда или SQL оператор в посочения файл.

В този случай следващата команда е .dump dot команда, която по подразбиране изобразява цялото съдържание на базата данни като SQL.

Като алтернатива можете да използвате .output , но това ще насочи резултатите от всички бъдещи команди/SQL изрази във файла. Това може да има непредвидени последици, ако не внимавате.

Възстановете базата данни

След като създадете архивния файл .sql, можете да реконструирате цялата база данни, като просто прочетете този файл от SQLite.

Например, можете да се свържете със SQLite, докато указвате нов файл на база данни (този, който все още не съществува):

sqlite3 Store2.db

Като посочи файл на база данни, който не съществува, SQLite ще създаде празна база данни.

Сега, когато сте в SQLite, можете да прочетете съдържанието на архивния файл:

.read Store.sql

Това е всичко. Базата данни е реконструирана от .sql файла. Всички таблици са създадени и всички данни са вмъкнати.

Създайте компресиран файл

Ако вашата база данни е голяма и съдържа много данни, може би е по-добре да създадете компресиран архивен файл.

Ето един пример:

sqlite3 Store .dump | gzip -c >Store.dump.gz

Имайте предвид, че това се изпълнява извън SQLite. С други думи, не се свързах със SQLite, преди да изпълня тази команда. Просто отворих нов прозорец на терминала и изпълних тази команда.

Всъщност първо се придвижих до папката за архивиране. Ако не направите това, ще трябва да включите пътя в архивния файл.

Можете да реконструирате базата данни с zcat . zcatът помощната програма ви позволява да преглеждате съдържанието на компресиран файл, без да го декомпресирате.

Така файлът, създаден в предишния пример, може да бъде реконструиран с помощта на zcat полезност.

zcat Store.dump.gz | sqlite3 Store2

Това може да работи или да не работи в зависимост от вашата система. Ако това не работи, може да се наложи да използвате друга помощна програма за компресиране.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да актуализирате съществуващи данни с SQLite

  2. UnsatisfiedLinkError в собствения метод

  3. Android SQLiteOpenHelper:Защо методът onCreate() не се извиква?

  4. Как да поръчате по дата в SQLite

  5. SQLite JSON_ARRAY()