Xem cơ sở dữ liệu SQLite

    Mở và khám phá các tệp cơ sở dữ liệu SQLite (.db, .sqlite, .sqlite3) trực tiếp trong trình duyệt qua WebAssembly. Dữ liệu không bao giờ rời khỏi máy tính của bạn.

    Đang tải công cụ SQLite DB Viewer...

    Dữ liệu ở lại trên thiết bị của bạn. Tệp cơ sở dữ liệu của bạn được mở trực tiếp trong trình duyệt. Không có dữ liệu nào được tải lên máy chủ của chúng tôi.

    Hướng dẫn sử dụng

    Làm theo các bước đơn giản sau để nhận kết quả chuẩn xác nhất.

    1Tải tệp cơ sở dữ liệu SQLite (.db, .sqlite hoặc .sqlite3) của bạn lên bằng cách kéo thả hoặc nhấp chọn tệp.
    2Duyệt danh sách bảng và chế độ xem (view) ở khung bên trái để kiểm tra cấu trúc cột, khóa chính và khóa ngoại.
    3Chọn một bảng để xem dữ liệu trong bảng phân trang tiện lợi, hỗ trợ sắp xếp cột và tìm kiếm văn bản.
    4Nhấp vào bất kỳ ô nào để kiểm tra giá trị đầy đủ, dữ liệu thô hoặc xem dữ liệu nhị phân (BLOB) dưới dạng hệ thập lục phân (hex).
    5Xuất trang hiện tại hoặc toàn bộ bảng thành tệp CSV hoặc JSON, hoặc sao chép câu lệnh tạo bảng SQL (CREATE TABLE).

    Câu hỏi thường gặp

    Giải đáp các thắc mắc phổ biến nhất liên quan đến công cụ.

    Công cụ hỗ trợ các tệp cơ sở dữ liệu SQLite 3 tiêu chuẩn với các phần mở rộng .db, .sqlite và .sqlite3. Các tệp định dạng khác hoặc bị hỏng sẽ được thông báo lỗi rõ ràng.

    Không. Theo nguyên tắc bảo mật của Tooltri, toàn bộ tệp được phân tích cục bộ 100% bên trong trình duyệt bằng WebAssembly. Hoàn toàn không có dữ liệu nào truyền qua mạng.

    Bạn có thể mở các tệp cơ sở dữ liệu có dung lượng lên đến 1.000 MB. Do quá trình xử lý diễn ra trực tiếp trong bộ nhớ WebAssembly của trình duyệt, hiệu suất phụ thuộc vào RAM trên thiết bị của bạn.

    Phiên bản hiện tại tập trung tối ưu vào việc duyệt cấu trúc lược đồ (schema), lọc dữ liệu, sắp xếp và xuất dữ liệu nhanh chóng. Tính năng bảng điều khiển truy vấn SQL tương tác sẽ được bổ sung trong bản cập nhật tương lai.

    Hiện tại công cụ chưa hỗ trợ các cơ sở dữ liệu được mã hóa bằng SQLCipher hoặc các tiện ích tương tự. Khi mở các tệp này, bạn sẽ nhận được thông báo lỗi tiêu đề tệp không hợp lệ.

    Có. Sau khi trang web và mô-đun WebAssembly được tải xong lần đầu, bạn có thể kiểm tra cơ sở dữ liệu hoàn toàn ngoại tuyến mà không cần kết nối mạng Internet.

    Thay vì nạp hàng trăm nghìn hàng dữ liệu cùng lúc vào bộ nhớ DOM, công cụ sử dụng Web Worker chạy ngầm để truy vấn dữ liệu từng trang theo cơ chế LIMIT và OFFSET, giúp giao diện luôn phản hồi ở tốc độ 60 FPS.

    Có. Bạn có thể sao chép các hàng hiển thị trên trang hiện tại dưới dạng JSON hoặc CSV, tải toàn bộ bảng về dưới dạng tệp CSV hoặc sao chép câu lệnh SQL CREATE TABLE của bảng.

    Cách thức hoạt động

    Tìm hiểu phương pháp luận, công thức toán học và nguyên lý kỹ thuật của công cụ này.

    Tìm hiểu SQLite và khám phá cơ sở dữ liệu trực tiếp trong trình duyệt

    SQLite là công cụ cơ sở dữ liệu được triển khai rộng rãi nhất trên thế giới. Nó vận hành trên hàng tỷ điện thoại thông minh (cả iOS và Android), trong trình duyệt web, phần mềm máy tính để bàn và các hệ thống máy chủ hiện đại. Không giống như các hệ thống cơ sở dữ liệu máy khách-máy chủ truyền thống như PostgreSQL hoặc MySQL, SQLite không yêu cầu quy trình máy chủ độc lập: tất cả các bảng, chỉ mục, định nghĩa lược đồ và hàng dữ liệu đều nằm trọn trong một tệp duy nhất trên ổ đĩa.

    Các nhà phát triển phần mềm, chuyên viên phân tích dữ liệu và kiểm toán viên thường xuyên làm việc với các tệp SQLite (.db, .sqlite, .sqlite3) để kiểm tra bộ nhớ đệm ứng dụng, cơ sở dữ liệu nhúng hoặc phân tích dữ liệu kiểm thử. Trước đây, thao tác này đòi hỏi cài đặt các ứng dụng máy tính cồng kềnh như DB Browser for SQLite hoặc sử dụng các công cụ trực tuyến không an toàn tải tệp nhạy cảm lên máy chủ bên thứ ba.

    Trình xem cơ sở dữ liệu SQLite của Tooltri giải quyết trọn vẹn thách thức này: cung cấp một môi trường kiểm tra cơ sở dữ liệu toàn diện ngay trong trình duyệt của bạn. Bằng cách kết hợp các API tệp cục bộ hiện đại với công cụ SQLite được biên dịch sang WebAssembly (WASM) chạy trong một Web Worker riêng biệt, bạn có thể kéo thả tệp SQLite, duyệt bảng, lọc dữ liệu và xuất kết quả mà vẫn đảm bảo quyền riêng tư tuyệt đối.

    Kiến trúc bên trong của một tệp cơ sở dữ liệu SQLite

    Để hiểu cách công cụ phân tích tệp phía máy khách hoạt động, chúng ta hãy xem xét cấu trúc lưu trữ của một tệp SQLite ở cấp độ nhị phân:

    • Tiêu đề 100 byte: Mọi tệp SQLite 3 hợp lệ đều bắt đầu bằng một tiêu đề 100 byte cố định, mở đầu bằng chuỗi ký tự ASCII "SQLite format 3\000". Tiêu đề này chỉ định kích thước trang cơ sở dữ liệu (thường là 4.096 byte), phiên bản định dạng tệp và các cờ trạng thái.
    • Cấu trúc cây B-Tree phân trang: SQLite tổ chức dữ liệu thành các cây B-Tree phân trang. Các trang nhánh bên trong đóng vai trò điều hướng chỉ mục, trong khi các trang lá lưu trữ các bản ghi dữ liệu thực tế.
    • Danh mục lược đồ hệ thống (sqlite_master): SQLite duy trì một bảng danh mục nội bộ có tên là sqlite_master (hoặc sqlite_schema), nơi lưu trữ toàn bộ câu lệnh CREATE TABLE, định nghĩa chỉ mục và chế độ xem (view).
    • Bản ghi có độ dài byte biến thiên: Các giá trị cột được tuần tự hóa bằng các số nguyên có độ dài biến thiên (varint), mã hóa kiểu dữ liệu và độ dài của dữ liệu kế tiếp nhằm tiết kiệm tối đa dung lượng đĩa.

    Sức mạnh của WebAssembly (WASM) phía máy khách

    Trước đây, việc chạy một công cụ cơ sở dữ liệu viết bằng ngôn ngữ C hoàn chỉnh với hiệu suất cao trong trình duyệt là điều bất khả thi. WebAssembly (WASM) đã thay đổi hoàn toàn điều đó bằng cách cho phép mã nhị phân được biên dịch trước thực thi với tốc độ gần như nguyên bản bên trong máy ảo của trình duyệt.

    Trình xem SQLite của chúng tôi sử dụng sql.js, một bản dựng WebAssembly được tối ưu hóa từ mã nguồn chính thức của SQLite:

    1. Nạp trực tiếp vào bộ nhớ RAM: Tệp cơ sở dữ liệu bạn chọn được đọc vào một ArrayBuffer ảo, không một byte dữ liệu nào bị truyền ra ngoài internet.
    2. Hiệu năng C nguyên bản: Các thao tác lọc, tìm kiếm và sắp xếp dữ liệu được thực hiện trong vài mili-giây bởi mã C đã biên dịch.
    3. Độ tương thích SQL tuyệt đối: Do sử dụng cùng một mã nguồn C của SQLite, mọi quy tắc ép kiểu dữ liệu và truy vấn đều hoạt động chính xác 100% như trên môi trường máy tính để bàn.
    4. Không có độ trễ mạng: Không cần giao tiếp với máy chủ, công cụ mang lại sự an tâm tuyệt đối khi làm việc với các cơ sở dữ liệu chứa thông tin kinh doanh nhạy cảm.

    Kiến trúc Web Worker: Duy trì giao diện luôn phản hồi mượt mà

    Việc phân tích các cơ sở dữ liệu có hàng chục nghìn bản ghi đòi hỏi khả năng xử lý tính toán đáng kể. Nếu thực hiện các tác vụ này trên luồng chính (main thread) của trình duyệt, giao diện người dùng sẽ bị đóng băng và giật lag.

    Trình xem SQLite của Tooltri giải quyết vấn đề này bằng cách chuyển toàn bộ thao tác cơ sở dữ liệu sang một Web Worker HTML5 chuyên dụng:

    • Xử lý nền độc lập: Web Worker chịu trách nhiệm khởi tạo WebAssembly, phân tích lược đồ và truy vấn các hàng dữ liệu mà không làm gián đoạn luồng kết xuất giao diện.
    • Giao tiếp thông điệp bất đồng bộ: Các yêu cầu lọc dữ liệu hoặc chuyển trang được gửi bất đồng bộ đến Worker; Worker chỉ trả về các hàng dữ liệu cần hiển thị cho trang hiện tại.
    • Trải nghiệm 60 FPS ổn định: Thao tác cuộn trang, chuyển đổi bảng và tương tác người dùng luôn duy trì độ mượt mà cao, ngay cả với các tệp dữ liệu lớn.

    Kiểm tra lược đồ và ánh xạ mối quan hệ bảng

    Ngay sau khi tệp được mở, khung bên trái cung cấp một cái nhìn tổng quan toàn diện về cấu trúc của cơ sở dữ liệu:

    • Bảng và Chế độ xem: Phân biệt trực quan rõ ràng giữa các bảng vật lý và các chế độ xem ảo (view), kèm theo số lượng bản ghi tương ứng.
    • Thuộc tính cột và quy tắc ràng buộc: Hiển thị chi tiết kiểu dữ liệu đã khai báo, ràng buộc NOT NULL, giá trị mặc định và khóa chính.
    • Nhận diện khóa ngoại: Tự động phân tích lệnh PRAGMA foreign_key_list để hiển thị mối liên kết quan hệ với các bảng cha tương ứng.
    • Xem định nghĩa SQL DDL: Dễ dàng xem lại câu lệnh CREATE TABLE ban đầu trong một hộp thoại tiện lợi kèm nút sao chép nhanh.

    Phân trang động và tối ưu hóa bộ nhớ

    Để ngăn ngừa tình trạng trình duyệt bị sập do phải render hàng triệu đối tượng JavaScript vào cây DOM, bảng dữ liệu của chúng tôi áp dụng chiến lược phân trang động:

    • Truy vấn LIMIT và OFFSET chính xác: Công cụ chỉ kết xuất vào DOM số lượng hàng mà bạn chọn xem (25, 50, 100 hoặc 500 hàng mỗi lần).
    • Sắp xếp tốc độ cao bằng mã C: Khi nhấp vào tiêu đề cột để sắp xếp, công cụ thực thi mệnh đề ORDER BY được tối ưu hóa trong nhân C thay vì ép mảng JavaScript phải sắp xếp thủ công chậm chạp.
    • Tìm kiếm toàn văn trên mọi cột: Tính năng tìm kiếm tự động tạo truy vấn lọc kết hợp chuyển đổi kiểu văn bản (CAST) trên toàn bộ các cột trong bảng.
    • Cố định tiêu đề bảng: Cuộn ngang và cuộn dọc trong các bảng rộng luôn thuận tiện nhờ các tiêu đề cột được giữ cố định ở đầu trang.

    Xử lý định kiểu động trong SQLite, giá trị NULL và dữ liệu nhị phân BLOB

    Hệ thống kiểu dữ liệu của SQLite áp dụng cơ chế ái lực kiểu động (dynamic type affinity), cho phép một cột duy nhất có thể lưu trữ các giá trị thuộc nhiều kiểu dữ liệu khác nhau:

    • Phân biệt rõ ràng giữa NULL và chuỗi rỗng: Giá trị SQL NULL thực sự được đánh dấu bằng một huy hiệu riêng biệt, tránh nhầm lẫn với các chuỗi rỗng khi kiểm tra tính toàn vẹn dữ liệu.
    • Hỗ trợ dữ liệu nhị phân (BLOB): Dữ liệu nhị phân thô như ảnh nhúng, chứng chỉ hoặc mã băm được hiển thị kèm kích thước byte chính xác và có thể kiểm tra chi tiết dưới dạng mã hex.
    • Hộp thoại xem chi tiết giá trị ô: Đối với các chuỗi văn bản dài hoặc cấu trúc JSON phức tạp, nhấp vào ô bất kỳ sẽ mở một cửa sổ chi tiết với định dạng dễ đọc và nút sao chép tiện lợi.

    Xuất dữ liệu và khả năng tương tác

    Trích xuất các dữ liệu cần thiết phục vụ báo cáo hoặc phát triển phần mềm một cách dễ dàng:

    • Sao chép dạng JSON: Xuất các hàng đang hiển thị thành một mảng JSON có cấu trúc chuẩn để sử dụng trong kiểm thử đơn vị hoặc giả lập API.
    • Sao chép dạng CSV: Định dạng các hàng hiển thị theo tiêu chuẩn RFC 4180 để dán nhanh vào các bảng tính Excel hoặc Google Sheets.
    • Tải về toàn bộ bảng dưới dạng CSV: Xuất trực tiếp toàn bộ dữ liệu của bảng từ công cụ WebAssembly thành tệp CSV mà không làm nghẽn bộ nhớ DOM.
    • Xuất lược đồ SQL: Sao chép cú pháp DDL chính xác để tái tạo cấu trúc bảng trên các môi trường cơ sở dữ liệu khác.

    Quyền riêng tư, bảo mật và tuân thủ dữ liệu

    Trong các dự án phần mềm hiện đại, cơ sở dữ liệu thường chứa bí mật kinh doanh, mã khóa truy cập hoặc thông tin cá nhân được bảo vệ bởi các quy định nghiêm ngặt như GDPR.

    Trình xem SQLite của Tooltri cam kết tiêu chuẩn an toàn dữ liệu cao nhất:

    • Không kết nối máy chủ: Tệp và dữ liệu của bạn không bao giờ rời khỏi thiết bị cá nhân.
    • Bộ nhớ RAM tạm thời: Dữ liệu nạp vào chỉ tồn tại trong bộ nhớ RAM tạm thời và sẽ bị xóa sạch hoàn toàn ngay khi bạn đóng tab trình duyệt.
    • Không theo dõi hành vi: Nội dung bảng, tên tệp và các thao tác lọc dữ liệu không bao giờ bị phân tích hoặc lưu vết.
    • Hoạt động ngoại tuyến hoàn chỉnh: Bạn hoàn toàn có thể sử dụng công cụ trong mạng nội bộ cô lập hoặc khi ngắt kết nối Internet mà không gặp bất kỳ trở ngại nào.
    Cập nhật gần nhất:

    Khám phá thêm các công cụ tương tự để tăng tốc quy trình làm việc của bạn.