Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Xuất cơ sở dữ liệu mysql / bảng mysql ở định dạng json thông qua dòng lệnh HOẶC PHP

mysql không thể xuất trực tiếp ở định dạng json

vì vậy bạn có hai lựa chọn:

  1. xuất trong XML bằng cách sử dụng một công cụ để chuyển đổi từ XML sang JSON (tất nhiên là một công cụ có thể xử lý các bảng lớn)

  2. viết một tập lệnh nhỏ (ví dụ trong PHP) tìm nạp dữ liệu từ DB và ghi nó vào tệp trong JSON

Lưu ý quan trọng:

Nếu bạn chọn tùy chọn nr. (2) bạn có thể gặp sự cố khi tải toàn bộ dữ liệu bảng, chuyển đổi sang JSON và lưu vào tệp trong một bước "nguyên tử" duy nhất nếu bạn có nhiều bản ghi .

Tuy nhiên, bạn có thể chia nhiệm vụ thành các bước.

Về cơ bản, một bảng được chuyển thành JSON là một mảng các đối tượng, mỗi đối tượng đại diện cho một bản ghi duy nhất.

  1. Mở kết nối với db

  2. Bắt đầu ghi tệp đầu ra và mở mảng bằng cách viết một dấu ngoặc vuông mở [

  3. Thực thi truy vấn của bạn khi tìm nạp n (1 SORT bảng theo bất kỳ trường -ex. id - và sử dụng LIMIT mệnh đề)

  4. Chuyển đổi từng bản ghi với json_econde , ghi chuỗi vào tệp, viết dấu phẩy , trừ khi bạn đã viết bản ghi cuối cùng.

  5. Quay lại 3 cho đến khi bạn đạt được bản ghi cuối cùng.

  6. Viết dấu ngoặc vuông đóng vào tệp ] (đóng mảng).

  7. Đóng tệp và kết nối db

Điều này sẽ đòi hỏi nhiều mã hóa hơn một chút nhưng nó không phải là khoa học tên lửa.

... và có thể bạn tìm thấy thứ gì đó trực tuyến đã làm được điều đó.

Cập nhật:

Bạn có thể tìm thấy tập lệnh tìm nạp dữ liệu từ DB và ghi vào tệp trong JSON tại đây trên GitHub: Dump-table-to-JSON (cập nhật lần cuối năm 2016).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bí danh để hiển thị bảng Kết quả MySQL

  2. Cách khắc phục lỗi khóa ngoại khi chạy quá trình di chuyển

  3. Truy vấn MYSQL để nhận chênh lệch ngày

  4. loại bỏ các hàng trùng lặp dựa trên một giá trị cột

  5. Truy vấn MySQL kiểm tra hai giá trị trong một cột