2008-10-03 93 views
180

Có cách nào để tạo sơ đồ hiển thị các bảng hiện có và các mối quan hệ của chúng được đưa ra kết nối với cơ sở dữ liệu không?Tạo biểu đồ quan hệ bảng từ lược đồ hiện có (SQL Server)

Đây là phiên bản SQL Server 2008 Express.

+45

Loại người đi bộ nào đóng câu hỏi dựa trên thực tế như thế này với câu trả lời rõ ràng? Ruls là BS anyway, nhưng đặc biệt là trong trường hợp này khi rất nhiều người dùng tìm thấy cả câu hỏi và câu trả lời hữu ích. – Marc

+0

một công cụ miễn phí có tên [SchemaSpy] (http://schemaspy.sourceforge.net/) có thể làm điều đó giống như sự quyến rũ. Nhưng, cần một chút thiết lập. Tôi đã nêu chi tiết các bước ở đây: http://blog.kmonsoor.com/generate-er-diagram-from-sql-database/ – kmonsoor

+0

@Marc lúc đầu tôi đồng ý với bạn, nhưng rất nhiều người đã trả lời bằng phần mềm yêu thích của họ thay vì trả lời "máy chủ sql có thể tạo ra sơ đồ?Tôi đã đồng ý rằng "chủ đề ngoài" không thực sự có ý nghĩa, và có thể một câu trả lời mới trong một ngày có thể đến. – Asoub

Trả lời

152

Có bạn có thể sử dụng SQL Server 2008 bản thân nhưng bạn cần phải cài đặt SQL Server Management Studio Express (nếu không được cài đặt). Chỉ cần kích chuột phải vào sơ đồ cơ sở dữ liệu và tạo sơ đồ mới. Chọn các bảng hiện có và nếu bạn đã chỉ định các tham chiếu trong bảng của bạn đúng cách. Bạn sẽ có thể xem sơ đồ hoàn chỉnh của các bảng đã chọn. Đối see tham khảo thêm:

+2

Bất kỳ cách nào để thực hiện điều này với SQL Server Compact 3.5? – GWTF

4

Tại sao bạn không chỉ sử dụng chức năng sơ đồ cơ sở dữ liệu được tích hợp vào SQL Server?

+4

Nó không phải lúc nào cũng có sẵn .. một số phiên bản SSMS và SQL không cho phép do cấp phép – ppumkin

46

Hãy thử DBVis - tải xuống tại https://www.dbvis.com/download/ - có phiên bản chuyên nghiệp (không cần thiết) và phiên bản mở đủ.

Tất cả những gì bạn phải làm là lấy đúng JDBC - trình điều khiển cơ sở dữ liệu ofr SQL Server, công cụ hiển thị bảng và tham chiếu trực giao, hirarchical, trong vòng tròn ;-) vv chỉ bằng cách nhấn một nút duy nhất. Tôi sử dụng phiên bản miễn phí trong nhiều năm nay.

+1

Điều này rất dễ thiết lập và tạo ra một sơ đồ dễ đọc hơn nhiều so với các công cụ của SQL Server +1 – notJim

+0

Rất dễ dàng để thiết lập iff bạn đang chạy JDBC. Nếu không có khả năng trong [tất cả để cấu hình quen thuộc heck] (http://stackoverflow.com/questions/1086764/how-can-i-make-ms-sql-server-available-for-connections) – ruffin

+0

+ ∞ cho việc này. – Olayinka

2

Visio Professional có tính năng kỹ thuật đảo ngược cơ sở dữ liệu nếu yiu tạo sơ đồ cơ sở dữ liệu. Nó không phải là miễn phí nhưng là khá phổ biến trong hầu hết các công ty và nên được khá dễ dàng để có được.

Lưu ý rằng Visio 2003 không chơi độc đáo với SQL2005 hoặc SQL2008 cho kỹ thuật đảo ngược - bạn sẽ cần phải nhận được năm 2007.

+6

Tính năng này không may đã bị xóa trong Visio 2013. –

2

SchemaCrawler for SQL Server có thể tạo ra sơ đồ cơ sở dữ liệu, với sự giúp đỡ của GraphViz. Các mối quan hệ khóa ngoài được hiển thị (và thậm chí có thể suy ra, sử dụng quy ước đặt tên), và các bảng và cột có thể được loại trừ bằng cách sử dụng các biểu thức thông thường.

+1

"Mối quan hệ khóa ngoại được suy ra, sử dụng quy ước đặt tên" - hoàn toàn không thể áp dụng cho ost của các trường hợp kinh doanh thực sự. – Ivan

9

Đối với câu lệnh SQL, bạn có thể thử các bông tuyết đảo ngược. Bạn có thể tham gia tại sourceforge hoặc trang web giới thiệu tại http://snowflakejoins.com/.

+0

Không thực hiện tác vụ (hình dung lược đồ cơ sở dữ liệu) nhưng vẫn khá thú vị. Tôi muốn có một cái gì đó như thế này để tạo ra một sơ đồ gọn gàng của một mạng máy tính từ một mô tả văn bản ... – Ivan

0

MySQL WorkBench là phần mềm miễn phí và được Oracle phát triển, bạn có thể nhập tệp SQL hoặc chỉ định cơ sở dữ liệu và nó sẽ tạo ra một Sơ đồ SQL mà bạn có thể di chuyển xung quanh để làm cho nó hấp dẫn hơn. Nó chạy trên GNU/Linux và Windows và hoàn toàn miễn phí và có giao diện chuyên nghiệp ..

+0

Nó dường như không hỗ trợ DBMSes khác hơn MySQL nữa. Ngoài ra, sơ đồ bố trí tự động của nó là đáng sợ. – Ivan

+0

bố cục tự động đơn giản ngăn xếp mọi thứ trên đầu trang khác, bạn phải kéo từng bảng đến vị trí thích hợp, nó có thể đáng sợ nhưng tôi nghi ngờ mọi thuật toán sẽ đủ thông minh để sắp xếp mọi thứ gọn gàng. Đối với hỗ trợ SQL tôi sử dụng nó với các truy vấn máy chủ H2 và nó hoạt động, tôi nghĩ rằng chúng hỗ trợ hầu hết SQL-92 tuân thủ SQL vì vậy nếu mã của bạn không tuân thủ SQL-92 nó có thể là một dịp tốt để kiểm tra nó. – dendini

+0

Sự không tương thích nằm ở khắp mọi nơi từ những thứ rất cơ bản như sử dụng dấu nháy/dấu ngoặc kép đến sự khác biệt lớn trong DDL (bảng/khóa/ràng buộc/ngôn ngữ định nghĩa chỉ mục) và sự khác biệt cơ bản về loại (như sử dụng kiểu riêng biệt cho chuỗi Unicode). – Ivan

Các vấn đề liên quan