Làm cách nào để giữ dự án cơ sở dữ liệu visualstudio của tôi đồng bộ với cơ sở dữ liệu của tôi?


11

Tôi muốn có lược đồ cơ sở dữ liệu của mình được đồng bộ hóa với dự án cơ sở dữ liệu Visual Studio .dbproj của tôi.

Ngay bây giờ, tôi đang sử dụng SSMS cho hầu hết các công việc phát triển cơ sở dữ liệu của mình và tôi sẽ sử dụng công cụ so sánh lược đồ của studio trực quan khi tôi cần lược đồ db và .dbproj được đồng bộ hóa. Tại sao tôi muốn điều này? bởi vì :

  • Đó là cách duy nhất để kiểm tra thay đổi
  • Đó là cách duy nhất để áp dụng các thay đổi
  • Không làm như vậy sẽ gây ra một số vấn đề về hợp nhất khi nhận tệp (về cơ bản, nếu "bản mới nhất" chứa một số thay đổi db trên các đối tượng db tôi đã cập nhật khi kiểm tra chúng, việc hợp nhất sẽ không được kích hoạt và thật dễ dàng để theo dõi phiên bản nào)
  • Thật tuyệt khi có thể sử dụng các tính năng tìm kiếm của VisualStudio trên phiên bản cập nhật của lược đồ
  • Thật tuyệt khi có thể sửa đổi các quy trình được lưu trữ từ VS (thường là khi bạn đã đổi tên tệp) bằng kết quả tìm kiếm.

Ngoài việc tự động hóa công cụ "so sánh lược đồ" để nó chạy cứ sau 5 phút (mà hầu như không phải là giải pháp "sạch"), có cách nào để đạt được điều này không?

Tôi muốn tiếp tục sử dụng SSMS nếu có thể, nhưng tôi cũng quan tâm đến các cách để tự động tuyên truyền các thay đổi được thực hiện bằng cách sử dụng "Kết nối máy chủ / cơ sở dữ liệu" của studio trực quan đến .dbproj.


bạn đã tìm được cách đồng bộ hóa dự án cơ sở dữ liệu của mình với SSMS chưa?

Câu trả lời:


4

SQL Server Management Studio chủ yếu là một công cụ QUẢN LÝ Máy chủ SQL và, do đó, không nhất thiết phải được xây dựng để hỗ trợ các kịch bản bạn đang tìm kiếm.

Visual Studio Team System 2008 Phiên bản cơ sở dữ liệu và Visual Studio Team System 2010 Pro / Ultimate bao gồm các công cụ dành cho nhà phát triển cơ sở dữ liệu (VSDB) để giúp những người có tài sản cơ sở dữ liệu mở rộng tích hợp lược đồ cơ sở dữ liệu / view / Proc / của họ. phát triển với sự phát triển ứng dụng của họ.

VSDB cho phép bạn thiết kế đảo ngược các lược đồ DB hiện có vào các dự án Visual Studio để bạn có thể kiểm soát các tệp kịch bản phần tử theo lược đồ. Bạn cũng có thể sửa đổi / tạo tập lệnh lược đồ SQL Server để tạo thực tế tất cả các thành phần lược đồ được SQL 2005/2008/2010 hỗ trợ.

VSDB cũng hỗ trợ khả năng triển khai các cập nhật lược đồ DB toàn phần / một phần cho các DB trống / hiện có trong đó công việc rất lớn để cố gắng chỉ áp dụng các thay đổi cần thiết để sửa đổi DB hiện có (nếu có) để nó phản ánh cấu trúc của dự án cơ sở dữ liệu VSDB nguồn.

VSDB cũng bao gồm một số công cụ để giúp bạn so sánh các lược đồ giữa các dự án DB và / hoặc DB và cũng cho phép bạn phân biệt và hợp nhất nội dung bảng.

Tuy nhiên, lưu ý rằng trong khi bộ công cụ này được hỗ trợ ngày hôm nay, nhóm đã bị giải tán và sản phẩm đang ở chế độ bảo trì. Nhóm sản phẩm SQL Server hiện sở hữu trách nhiệm tạo công cụ cho nhà phát triển và rất nỗ lực để làm việc đó :)


1
Tôi đã là người dùng các tính năng db của 2010. Nhưng tôi vẫn chưa tìm ra cách sử dụng nó để sửa đổi ngay lập tức cả dự án cơ sở dữ liệu và dự án cơ sở dữ liệu của mình. Chạy một so sánh lược đồ sau mỗi lần sửa đổi là quá nhiều rắc rối ... :(
Brann

Đã bắt đầu nhìn vào VSDB ngày hôm qua, tôi thấy đoạn cuối của bạn khá đáng báo động. Âm thanh như tôi không nên đầu tư nhiều thời gian hoặc năng lượng ...?
Stewol

1

Có hai cách mà tôi biết với các tính năng tối ưu của VS2010 để làm điều này.

  1. Sử dụng SSMS hoặc công cụ khác để chỉnh sửa lược đồ DB sau đó chạy lược đồ so sánh định kỳ (cuối ngày) và sau đó nhập bất kỳ thay đổi lược đồ nào vào dự án DB.
  2. Chỉnh sửa các tệp trong dự án DB của bạn thông qua VS và sau đó tạo gói triển khai chạy trực tiếp trên DB của bạn hoặc tạo tập lệnh để bạn chạy để cập nhật lược đồ của mình trong DB.

Giải pháp thứ hai là, theo tôi, giải pháp tốt nhất. Bạn có thể thiết lập quy trình triển khai chỉ mất một cú nhấp chuột. Chỉnh sửa tệp của bạn trong Visual Studio sẽ tự động kiểm tra chúng ngoài tầm kiểm soát nguồn. Tôi đã làm việc với phương thức đầu tiên, nhưng thật khó để luôn luôn so sánh lược đồ. Thêm vào đó, ít nhất là đối với tôi, công cụ so sánh lược đồ gặp sự cố với Visual Studio rất nhiều.
Kris Harper
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.