SQLite 3.50.3

Cơ sở dữ liệu nhẹ, không máy chủ, nhúng và độc lập.

Phiên bản cũ

Xem tất cả phiên bản cũ

Mô tả


SQLite là một cơ sở dữ liệu quan hệ nhẹ, mã nguồn mở, được thiết kế để tích hợp trực tiếp vào ứng dụng, cung cấp một giải pháp hiệu quả cho việc lưu trữ và quản lý dữ liệu mà không cần máy chủ chuyên dụng. 

SQLite là gì?

SQLite là một thư viện cơ sở dữ liệu được viết bằng C, triển khai một cơ chế cơ sở dữ liệu quan hệ SQL hoàn chỉnh, tự chứa, không cần máy chủ và không cần cấu hình. Nó lưu trữ toàn bộ cơ sở dữ liệu (các bảng, chỉ mục, dữ liệu, vv) trong một tệp duy nhất trên đĩa, giúp dễ dàng di chuyển và sử dụng trên nhiều hệ thống khác nhau. Được tạo ra bởi D. Richard Hipp vào năm 2000, SQLite được sử dụng rộng rãi trong các ứng dụng cần một cơ sở dữ liệu cục bộ, như ứng dụng di động, hệ thống nhúng, trình duyệt web và phần mềm máy tính để bàn.

Các tính năng chính

  1. Không cần máy chủ (Serverless):
    • Khác với các cơ sở dữ liệu như MySQL hoặc PostgreSQL, SQLite không yêu cầu một quy trình máy chủ riêng biệt. Thư viện này được tích hợp trực tiếp vào ứng dụng, mà truy cập tệp cơ sở dữ liệu thông qua các cuộc gọi hàm. Điều này giúp giảm tải và đơn giản hóa cấu hình.
  2. Tự chứa:
    • SQLite không phụ thuộc vào các thư viện bên ngoài (ngoại trừ thư viện chuẩn C) và chứa tất cả những gì cần thiết để hoạt động. Điều này làm cho nó trở nên lý tưởng cho các môi trường có tài nguyên hạn chế, như các thiết bị nhúng.
  3. Tệp duy nhất:
    • Tất cả cơ sở dữ liệu, bao gồm dữ liệu, sơ đồ và chỉ mục, được lưu trữ trong một tệp duy nhất với phần mở rộng .db hoặc .sqlite. Tệp này di động và có thể được sao chép hoặc di chuyển dễ dàng giữa các hệ thống, miễn là chúng tương thích với kiến trúc của SQLite.
  4. Giao dịch ACID:
    • SQLite hỗ trợ giao dịch với các thuộc tính ACID (Tính nguyên tử, Tính nhất quán, Sự cô lập, Tính bền vững), đảm bảo độ tin cậy trong các hoạt động ghi và đọc, ngay cả trong trường hợp xảy ra sự cố (như mất điện).
  5. Hỗ trợ SQL chuẩn:
    • SQLite thực hiện hầu hết các tiêu chuẩn SQL (SQL92, có các phần mở rộng), bao gồm hỗ trợ cho các bảng, chỉ mục, khóa chính và ngoại, bộ kích hoạt (triggers), chế độ xem (views) và các truy vấn con. Tuy nhiên, nó có một số hạn chế, như hỗ trợ một phần cho ALTER TABLE và thiếu hỗ trợ cho RIGHT OUTER JOIN và FULL OUTER JOIN.
  6. Kiểu động:
    • Khác với các cơ sở dữ liệu quan hệ khác, SQLite sử dụng kiểu động, cho phép một cột lưu trữ các giá trị của các kiểu khác nhau (ví dụ, số nguyên, văn bản hoặc null trong cùng một cột). Nó xác định "ưu tiên kiểu" (như INTEGER, TEXT, BLOB) để hướng dẫn việc lưu trữ, nhưng không áp đặt các hạn chế cứng nhắc.
  7. Nhẹ và nhanh:
    • SQLite cực kỳ hiệu quả, với kích thước thư viện khoảng 700 KB. Nó được tối ưu hóa cho các hoạt động đọc và ghi trên khối lượng dữ liệu vừa phải, với hiệu suất tương đương hoặc cao hơn so với các hệ thống khác trong các tình huống có độ đồng thời thấp.
  8. Giấy phép quyền công cộng:
    • SQLite thuộc phạm vi công cộng, có nghĩa là có thể được sử dụng tự do trong các dự án thương mại hoặc mã nguồn mở mà không có hạn chế về giấy phép.

Hoạt động nội bộ

  • Kiến trúc:
    • SQLite hoạt động như một thư viện nhúng trong ứng dụng, thực hiện các cuộc gọi trực tiếp để quản lý tệp cơ sở dữ liệu. Nó sử dụng một động cơ cơ sở dữ liệu nội bộ bao gồm một bộ phân tích SQL, một bộ tối ưu hóa truy vấn và một bộ quản lý lưu trữ.
    • Việc lưu trữ được dựa trên một định dạng tệp nhị phân hiệu quả, sử dụng các trang đĩa cố định (thường là 4 KB) để tổ chức dữ liệu và chỉ mục trong một cấu trúc cây B+.
  • Đồng thời:
    • SQLite hỗ trợ nhiều kết nối đến cùng một cơ sở dữ liệu, nhưng với những hạn chế. Nó sử dụng khóa tệp để quản lý đồng thời, chỉ cho phép một hoạt động ghi tại một thời điểm (tuần tự). Các hoạt động đọc có thể đồng thời, nhưng các hoạt động ghi sẽ khóa các hoạt động khác.
    • Kể từ phiên bản 3.7.0, SQLite hỗ trợ chế độ WAL (Ghi trước), điều này cải thiện khả năng đồng thời bằng cách cho phép các đọc đồng thời trong các hoạt động ghi, mặc dù vẫn giới hạn ở một ghi tại một thời điểm.
  • Khả năng mở rộng:
    • SQLite cho phép các mở rộng tùy chỉnh, như các hàm định nghĩa bởi người dùng (UDFs) bằng C hoặc các ngôn ngữ khác và hỗ trợ các mô-đun bổ sung, như FTS (Tìm kiếm văn bản đầy đủ) cho các tìm kiếm văn bản nâng cao.

Lợi ích

  • Dễ sử dụng: Không yêu cầu cấu hình máy chủ hoặc quản lý phức tạp, lý tưởng cho các nhà phát triển cần một giải pháp đơn giản.
  • Tính di động: Tệp cơ sở dữ liệu có thể được di chuyển hoặc sao chép dễ dàng, không có phụ thuộc bên ngoài.
  • Tiêu hao tài nguyên thấp: Tiêu tốn ít bộ nhớ và không gian đĩa, hoàn hảo cho các thiết bị có tài nguyên hạn chế, như điện thoại thông minh hoặc IoT.
  • Tính đáng tin cậy: Hỗ trợ giao dịch ACID đảm bảo tính toàn vẹn của dữ liệu, ngay cả trong các tình huống bị lỗi.
  • Được áp dụng rộng rãi: Được sử dụng trong hàng tỷ thiết bị, bao gồm các trình duyệt (Firefox, Chrome), hệ điều hành di động (Android, iOS), và các ứng dụng như Adobe Lightroom và Skype.

Nhược điểm

  • Đồng thời hạn chế: Không phù hợp cho các ứng dụng có đồng thời ghi cao, như máy chủ web với hàng ngàn người dùng đồng thời. Các cơ sở dữ liệu như PostgreSQL hoặc MySQL phù hợp hơn trong những trường hợp này.
  • Tính mở rộng: Mặc dù hiệu quả cho các cơ sở dữ liệu lên đến vài terabyte, SQLite không được tối ưu hóa cho khối lượng dữ liệu lớn hoặc các khối lượng công việc phân tích phức tạp.
  • Chức năng SQL không hoàn chỉnh: Thiếu hỗ trợ cho một số chức năng nâng cao, như RIGHT OUTER JOIN, stored procedures và các thay đổi phức tạp trên sơ đồ thông qua ALTER TABLE.
  • Bảo mật: SQLite không có kiểm soát truy cập gốc (như người dùng và quyền), vì việc truy cập được quản lý bởi hệ thống tập tin.

Trường hợp sử dụng

  • Ứng dụng di động: Sử dụng trên Android và iOS để lưu trữ dữ liệu của ứng dụng, như tin nhắn, danh bạ và cấu hình.
  • Hệ thống nhúng: Phổ biến trong các thiết bị IoT, TV thông minh và đồ gia dụng do tiêu thụ tài nguyên thấp của nó.
  • Ứng dụng máy tính để bàn: Các phần mềm như trình duyệt (để lưu trữ lịch sử và cookie) và các trình quản lý phương tiện sử dụng SQLite.
  • Thử nghiệm nhanh: Hữu ích để phát triển và thử nghiệm ứng dụng trước khi chuyển sang cơ sở dữ liệu khách hàng-máy chủ.
  • Cơ sở dữ liệu cục bộ: Hoàn hảo cho các ứng dụng độc lập không yêu cầu truy cập từ xa hoặc đồng thời cao.

Kết luận

SQLite là một giải pháp mạnh mẽ, nhẹ nhàng và linh hoạt cho các ứng dụng cần một cơ sở dữ liệu cục bộ, đáng tin cậy và dễ dàng tích hợp. Mặc dù không phù hợp cho các kịch bản có đồng thời cao hoặc khối lượng dữ liệu lớn, sự đơn giản, tính di động và hiệu quả của nó khiến nó trở thành một lựa chọn phổ biến trong nhiều trường hợp, từ thiết bị di động đến hệ thống nhúng.


Thông số kỹ thuật


Phiên bản: 3.50.3

Kích thước: 1.28 MB

Giấy phép: Miễn phí

Ngôn ngữ:

Nền tảng: Windows (64 bits)

Loại tệp: ZIP

SHA-256: 46754a93c17a7dfbc8a6ca7b1c74494ec4abc459e28049b4530634d06f2257d1

Nhà phát triển: SQLite

Danh mục: Tiện ích/Cơ sở dữ liệu

Cập nhật: 18/07/2025

Liên quan


Jailer
Tạo bản sao của cơ sở dữ liệu và bảo vệ quyền riêng tư của dữ liệu nhạy cảm.

brModelo 3.0
Phiên bản 3.0 của brModelo, phần mềm để tạo các mô hình quan hệ của cơ sở dữ liệu.

brModelo 2.0
Phần mềm miễn phí dành cho việc dạy học mô hình hóa cơ sở dữ liệu quan hệ.

Alternate Timer
Phần mềm cho phép quản lý và ghi lại giờ giấc, như thời gian làm việc hàng ngày hoặc việc sử dụng internet.

ESEDatabaseView
Công cụ cầm tay cho phép khám phá các tập tin cơ sở dữ liệu Extensible Storage Engine (ESE), còn được biết đến với tên gọi tập tin EDB.

Info-Base


©2005-2025 Baixe.net