Công cụ vẽ sơ đồ ERD online
ErdDocs không bắt bạn vẽ sơ đồ ERD mà tự tạo ra nó. Hãy dán bản dump SQL, lược đồ Prisma, migration hoặc model ORM. Chỉ sau vài giây, các thực thể, thuộc tính và quan hệ sẽ hiện ra theo ký hiệu chân quạ. Công cụ miễn phí, không cần tài khoản hay cài đặt. Lược đồ không được tải lên đâu cả.
Danh mục phim, được tạo từ SQL bên trái. Hãy dán lược đồ của bạn đè lên.
Đây có phải công cụ vẽ không?
Không. ErdDocs lấy sơ đồ từ lược đồ bạn dán. Không có bảng hình mẫu, không có công cụ kẻ đường, không có khung trống để bắt đầu. Ở đây, sơ đồ ERD là kết quả của việc đọc lược đồ, không phải thứ bạn tự lắp ghép. Bạn dán đoạn văn bản vốn đã mô tả cơ sở dữ liệu. Từ đó công cụ dựng ra các hộp, cột, khóa và bản số. Bạn vẫn kéo được các bảng để sắp xếp, và liên kết chia sẻ giữ lại cách sắp xếp đó. Nhưng mọi thứ sơ đồ hiển thị đều lấy từ lược đồ của bạn, không có gì phải gõ lại bằng tay.
Gần như mọi công cụ khác xuất hiện khi tìm kiếm cụm từ này đều làm ngược lại. Phần tiếp theo nói về trường hợp duy nhất ErdDocs để lại cho công cụ vẽ: cơ sở dữ liệu chưa tồn tại.
Vẽ hay tạo?
Tất cả phụ thuộc vào một điều: lược đồ đã có hay chưa.
- Lược đồ chưa có: hãy vẽ. ErdDocs đọc lược đồ, nên đây là trường hợp duy nhất nó không lo được. Khi chưa có cơ sở dữ liệu, mô hình dữ liệu được bàn bạc và phác thảo: có những thực thể nào và chúng liên kết ra sao. Đơn hàng tự giữ địa chỉ hay chỉ trỏ tới một địa chỉ? Quan hệ này có thật là nhiều-nhiều không? Khung vẽ hoặc bảng trắng là nơi phù hợp để bàn những câu hỏi đó. Khi mô hình đã thành một migration hay một câu CREATE TABLE, ErdDocs đọc tiếp từ đó.
- Lược đồ đã có: hãy tạo. Khi các bảng đã có thật, chúng đã được mô tả chính xác trong câu lệnh
CREATE TABLE, trong lược đồ Prisma, trong tệp migration, trong lớp model ORM. Vẽ tay lại một lược đồ đã có nghĩa là chép lại thứ đã được mô tả. Việc đó tốn thời gian của bạn, và kết quả chỉ là thêm một bản sao kém tin cậy hơn. Bản chép đó sẽ lỗi thời ngay từ migration tiếp theo.
Trong các công cụ vẽ sơ đồ ERD, ErdDocs là công cụ làm cho cơ sở dữ liệu đã tồn tại. Phần còn lại dành cho việc phác thảo từ đầu. Phần lớn người tìm công cụ ERD đã có sẵn lược đồ. Họ vẫn chọn công cụ vẽ, vì kết quả tìm kiếm chỉ đưa ra công cụ vẽ.
Những gì ErdDocs làm được mà các công cụ vẽ sơ đồ ERD khác không làm được
Mọi công cụ dưới đây đều vẽ sơ đồ ERD. Bảng bên dưới so sánh những việc ErdDocs làm được.
| Tính năng | ErdDocs | dbdiagram | Eraser | diagrams.net | Lucidchart | SmartDraw | Miro | Figma FigJam |
|---|---|---|---|---|---|---|---|---|
| Tự dựng sơ đồ từ SQL, đủ cả bảng lẫn mọi quan hệ | ✓ Có | ✓ Có | Một phần: SQL làm lời nhắc cho AI | Một phần: chỉ có bảng, đường nối vẽ tay | Một phần: kéo bảng lên khung vẽ bằng tay | Một phần: từ CSV, không phải SQL | Một phần: bằng AI hoặc mã Mermaid | Một phần: chỉ từ mã Mermaid |
| Đọc Prisma và model ORM | ✓ Có | × Không | Một phần: mã làm lời nhắc cho AI | × Không | × Không | × Không | × Không | × Không |
| Tìm quan hệ không có khóa ngoại, miễn phí | ✓ Có | Một phần: AI trong gói trả phí | Không nêu | × Không | × Không | × Không | Một phần: AI gợi ý quan hệ | Không nêu |
| Lược đồ không bị gửi lên máy chủ của nhà cung cấp | ✓ Có | Một phần: chỉ trong trình tạo liên kết | × Không | ✓ Có | × Không | × Không | × Không | × Không |
| Xuất ảnh không cần tài khoản | ✓ Có | Không nêu | × Không | ✓ Có | × Không | × Không | Một phần: chỉ với bảng trắng cơ bản | × Không |
| Xuất Mermaid, DBML và PlantUML | ✓ Có | Một phần: chỉ DBML | × Không | × Không | Một phần: Mermaid, chỉ qua MCP | × Không | Một phần: chỉ Mermaid | × Không |
| Từ điển dữ liệu in được | ✓ Có | Một phần: tài liệu web, không có PDF | Không nêu | × Không | × Không | × Không | Không nêu | × Không |
| Không cần thuê bao | ✓ Có | × Không | × Không | ✓ Có | Một phần: gói miễn phí không nhập được ERD | × Không | × Không | × Không |
Bảng dựa trên trang web của chính từng nhà cung cấp, tính đến tháng 11 năm 2026. «Không nêu» nghĩa là nhà cung cấp không nói đến điều đó. Tên sản phẩm thuộc về chủ sở hữu tương ứng.
Gần ErdDocs nhất là dbdiagram. Nó cũng dựng sơ đồ từ SQL. Nhưng nó không đọc Prisma hay model ORM, và không xuất ra Mermaid hay PlantUML. Quan hệ không có khóa ngoại chỉ được tìm bằng AI, trong gói trả phí. Gói trả phí của dbdiagram chỉ có dạng thuê bao, còn ErdDocs chỉ cần trả một lần.
Eraser không phân tích SQL. Nó đưa SQL cho một mô hình AI làm lời nhắc, nên lược đồ rời khỏi máy bạn. Muốn xuất thì phải có tài khoản. Mermaid, DBML và PlantUML không nằm trong các định dạng xuất của nó.
diagrams.net biến SQL dán vào thành các bảng, nhưng quan hệ giữa chúng bạn phải tự vẽ bằng tay. Nó không đọc model ORM và không tạo từ điển dữ liệu.
Lucidchart cần một tài khoản và một truy vấn được thực thi trên cơ sở dữ liệu đang chạy. Sau khi nhập, các bảng phải được xếp lên khung vẽ bằng tay. Quan hệ chỉ được lấy từ những khóa ngoại đã khai báo.
SmartDraw dựng ERD từ một tệp CSV mà bạn xuất ra bằng truy vấn trên cơ sở dữ liệu đang chạy. Nó không đọc bản dump SQL hay model ORM, và chỉ chạy online.
Miro và Figma FigJam dựng ERD bằng AI hoặc từ mã Mermaid, không phải từ SQL. Lược đồ được lưu trên đám mây của họ. Muốn xuất thì phải qua tài khoản.
Vì sao ERD vẽ tay lỗi thời, còn ERD được tạo ra thì không
Sơ đồ vẽ tay là một bức ảnh chụp, không có liên kết nào với cơ sở dữ liệu. Migration tiếp theo thêm một cột, đổi tên một bảng hoặc bỏ một khóa ngoại. Sơ đồ vẫn hiện hình dạng cũ. Nó chỉ được sửa khi có người nhớ ra nó, tìm được tệp, có giấy phép trình chỉnh sửa và có thời gian. Thường thì việc đó chỉ xảy ra đúng tuần sơ đồ được vẽ, rồi không bao giờ nữa. Nhiều kho mã chứa một sơ đồ mâu thuẫn với lược đồ nằm ngay cạnh.
Sơ đồ được tạo ra không có phiên bản nào phải giữ cho khớp. Nó là một cách nhìn vào văn bản lược đồ. Chạy lại trên bản dump hiện tại chỉ mất vài giây, và kết quả chắc chắn đúng. Bạn có thể tạo lại sơ đồ ở mỗi lần phát hành. Từ cùng nội dung dán vào, bạn có thể xuất Mermaid cho README, SVG cho trang tài liệu, hoặc một từ điển dữ liệu đầy đủ để bàn giao.
Có thể dán những gì?
Mười định dạng, nhận biết tự động. Bạn dán tệp nguyên trạng, công cụ tự hiểu nó đang đọc gì.
- SQL: script PostgreSQL, MySQL, SQL Server và SQLite, đúng như máy chủ và công cụ của chúng tạo ra, chẳng hạn kết quả của pg_dump, mysqldump hoặc «Generate Scripts» trong SSMS. Công cụ đọc được dấu backtick,
AUTO_INCREMENT, các lôGOcủa SSMS và các khóa khai báo trong một câuALTER TABLEphía sau. Xem trang về MySQL để biết một bản dump chứa gì. - Ngôn ngữ lược đồ: Prisma, DBML, Mermaid và PlantUML. Chúng vốn đã là sơ đồ dạng văn bản, chỉ cần vẽ ra.
- Model ORM: lớp Django, SQLAlchemy, Sequelize và TypeORM, cùng migration Laravel. Đây chính là những dự án chưa bao giờ có sơ đồ, vì cơ sở dữ liệu được định nghĩa trong mã ứng dụng.
Trang định dạng liệt kê từng định dạng, kèm phần nào được đọc và phần nào được cố ý bỏ qua.
Kết quả cũng xuất được sang Mermaid, DBML, PlantUML hoặc SQL, để dán vào README hay tài liệu dự án.
Sơ đồ được tạo ra cho thấy những gì?
Mỗi bảng là một hộp. Bên trong là các cột với kiểu thật của chúng, các khóa được đánh dấu. Hai đầu mỗi quan hệ dùng ký hiệu chân quạ. Nhờ vậy, sơ đồ ghi rõ bản số chứ không để người xem tự đoán. Trong danh mục phim ở trên, film_credits là bảng trung gian có cột riêng. Quan hệ nhiều-nhiều trông đúng như vậy khi đã vào cơ sở dữ liệu.
Nhiều dự án Rails, Django hay Laravel không khai báo khóa ngoại trong cơ sở dữ liệu. Khi đó, ErdDocs suy ra quan hệ từ tên cột: film_id trỏ tới films, user_id trỏ tới users. Quan hệ này được vẽ bằng nét đứt để không nhầm với quan hệ do cơ sở dữ liệu ràng buộc. Bước này quan trọng nhất với cơ sở dữ liệu thật mà bạn được giao lại. Trang công cụ vẽ sơ đồ cơ sở dữ liệu giải thích lý do.
Câu hỏi thường gặp
Đây có phải công cụ vẽ ERD kiểu kéo thả hộp không?
Không. ErdDocs tạo sơ đồ từ lược đồ bạn dán. Không có bảng hình mẫu, không có công cụ kẻ đường, và đó là chủ ý. Bạn vẫn kéo được các bảng để sắp xếp bố cục, và liên kết chia sẻ giữ lại bố cục đó. Nhưng không có gì được vẽ bằng tay. Mọi hộp và mọi đường đều lấy từ SQL.
Có nên vẽ ERD bằng tay thay vì tạo tự động không?
ErdDocs tạo ERD khi các bảng đã có thật. Đây là tình huống của phần lớn người dùng, vì lược đồ thường có trước khi ai đó cần một hình vẽ. Trường hợp duy nhất nó bỏ qua là cơ sở dữ liệu chưa được xây. Trước khi có ai viết migration, mô hình dữ liệu được bàn bằng cách phác các thực thể trên khung vẽ. Việc đó dành cho các công cụ vẽ thông thường. Khi bản phác đã thành migration hay câu CREATE TABLE, hãy dán vào đây. Sơ đồ sẽ được lấy từ chính lược đồ.
Tôi có thể dán những gì vào?
Mười định dạng: SQL của PostgreSQL, MySQL, SQL Server và SQLite, lược đồ Prisma, DBML, Mermaid, PlantUML, model Django, SQLAlchemy, Sequelize, entity TypeORM và migration Laravel. Định dạng được nhận biết tự động. Hãy dán tệp nguyên trạng, không cần dọn dẹp hay xuất trước.
Có cần tài khoản, cài đặt hay kết nối cơ sở dữ liệu không?
Không cần thứ nào cả. Bộ phân tích là JavaScript chạy trong trình duyệt. Không có máy chủ để kết nối, không có lược đồ nào phải tải lên. Tên bảng và tên cột không rời máy bạn. Mở trang, dán vào, là có sơ đồ.
Khi lược đồ thay đổi thì sao?
Dán bản dump mới, sơ đồ sẽ được tạo lại trong vài giây. ERD vẽ tay chỉ được sửa khi có người nhớ ra nó, nên nó bắt đầu lệch khỏi cơ sở dữ liệu từ migration tiếp theo. Sơ đồ được tạo ra thì không thể lệch, vì lần nào nó cũng được lấy từ lược đồ.
Có miễn phí không?
Có, với sơ đồ. Lược đồ tới 25 bảng được vẽ đầy đủ, không cần tài khoản. Xuất PNG, SVG, Mermaid, DBML, PlantUML và SQL đều miễn phí. Lược đồ lớn hơn vẫn được phân tích trọn vẹn, nhưng các bảng vượt giới hạn hiện ở dạng khóa. Một lần thanh toán 9 USD sẽ bỏ giới hạn và mở từ điển dữ liệu.
Có dùng được cho bài tập hay đồ án cơ sở dữ liệu không?
Được. Hãy viết các bảng bằng SQL rồi dán vào đây. Bạn sẽ có sơ đồ ERD kèm bản số, cùng một từ điển dữ liệu để in. Nếu giảng viên yêu cầu mô hình trước khi có bảng, bạn cần thiết kế mô hình trước. ErdDocs vẽ những gì đã được viết.
Xem thêm
- Sơ đồ ERD là gì: khái niệm, và cách đọc một sơ đồ.
- Công cụ vẽ sơ đồ cơ sở dữ liệu: cùng công cụ này, viết cho người đang nhìn vào một cơ sở dữ liệu hơn là một mô hình.
- Ký hiệu sơ đồ ERD: ý nghĩa của các hình và đầu đường.
- Sơ đồ lược đồ: sơ đồ lược đồ khác sơ đồ ERD ở đâu.
- Ví dụ sơ đồ ERD: các bài mẫu theo lĩnh vực, mỗi bài kèm SQL.
- Thay thế ERDPlus: những gì ErdDocs làm được mà công cụ vẽ không làm được.
- SQL sang sơ đồ ERD: công cụ, với mọi định dạng nó đọc được.