2011-07-07 39 views
6

Tôi đã gặp sự cố rất giống với this. Tôi có một dự án cơ sở dữ liệu Visual Studio .dbproj. Nó triển khai tốt trong SQL Server Express. Bây giờ tôi muốn triển khai nó vào SQL Azure - Tôi thay đổi các tham số kết nối nhưng triển khai không thành công với văn bản sau:Dự án cơ sở dữ liệu Visual Studio sẽ không triển khai cho SQL Azure

C: \ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ TeamData \ Microsoft.Data .Schema.TSqlTasks.targets (120,5): Lỗi Triển khai: Nhà cung cấp lược đồ cơ sở dữ liệu đích không thể xác định được. Triển khai không thể tiếp tục. Hoàn thành nhiệm vụ thực thi "SqlDeployTask" - ĐÃ FAILED.

Có đang triển khai dự án .dbproj cho SQL Azure được hỗ trợ không? Làm thế nào để làm cho Visual Studio triển khai cơ sở dữ liệu vào SQL Azure? Những cách khác để đạt được nhiều hơn hoặc ít hơn các kết quả tương tự ngoại trừ tái tạo cơ sở dữ liệu bằng tay bằng cách sử dụng cổng thông tin Azure?

Trả lời

5

Theo như tôi biết, các dự án cơ sở dữ liệu vẫn không được hỗ trợ bởi Windows Azure. Bạn có thể triển khai dự án đến một máy chủ SQL cục bộ và sau đó sử dụng tính năng "Tạo kịch bản" để chuyển cơ sở dữ liệu sang SQL Azure. Xem này link.

+3

Chúng hiện được hỗ trợ trong VS2012. Kiểm tra câu trả lời của tôi. – whihathac

4

Một giải pháp dễ dàng là tạo cơ sở dữ liệu cục bộ và sử dụng SQL Azure Migration Wizard để thực hiện di chuyển lên tới SQL Azure. Nó hoạt động rất tốt chỉ trong một vài cú nhấp chuột (và sẽ sửa lỗi phổ biến).

+0

Nếu bạn sử dụng SQL 2008 R2 thuật sĩ di chuyển SQL Azure không còn cần thiết. Việc tạo tập lệnh hỗ trợ Azure được hỗ trợ đầy đủ ngay bây giờ. –

+0

SQL 2008 R2 không triển khai dữ liệu. The Wizard. Và cũng sửa lỗi phổ biến hoặc cung cấp thông tin về lý do tại sao nó không hoạt động. –

2

Dự án cơ sở dữ liệu không hoạt động với SQL Azure. Những gì tôi làm là trước khi triển khai, tạo một cơ sở dữ liệu mới trên máy chủ cục bộ (để đảm bảo nó được cập nhật không có kịch bản lệnh dev), và sau đó đồng bộ hóa cơ sở dữ liệu đó với Azure với So sánh SQL RedGate. Tôi làm một bản sao lưu đầu tiên với RedGate SQL Azure Backup.

1

Khi chúng tôi lần đầu tiên xây dựng các dự án DB, SQLAzure vẫn đang trải qua cuộc khủng hoảng danh tính của nó và không biết nó muốn là gì. ;)

DBProjects hỗ trợ một số lượng lớn các khả năng so với SQLAzure. Do đó, hoàn toàn có thể là nó sẽ tạo các tập lệnh không chạy với SQLAzure.

Tôi biết rằng nhóm đã tiếp quản công cụ DBProject đang xem xét việc hạn chế các trình tạo dự án cơ sở dữ liệu để tạo các tập lệnh tương thích SQLAzure, nhưng tôi không biết họ đã nhận được bao nhiêu hoặc họ có quyết định tiếp tục hay không.

Tôi lặp lại gợi ý của dunnry ở trên và sử dụng SQL Azure Migration Wizard hoặc Jeremy và sử dụng SQL 2008 R2 và tạo tập lệnh tương thích với Azure.

+0

Trong khi nhóm DBProjects đang ở đó, họ cũng có thể thêm khả năng tạo ra một tập lệnh có thể được sao chép vào SSMS và chạy, thay vì dựa vào VS để triển khai. Sau đó, DBProjects sẽ hữu ích một nửa cho việc triển khai. – Craig

+0

bằng cách sử dụng thuật sĩ di chuyển SQL Azure là tốt cho một quá trình thủ công, nhưng làm thế nào để bạn tốt nhất làm điều này trong một xây dựng và triển khai tự động? Tôi không thể viết kịch bản thuật sĩ, tôi có thể? – ryancrawcour

10

Nếu bạn đang sử dụng Visual Studio 2012, bây giờ bạn có thể tạo dự án Cơ sở dữ liệu và đi đến Thuộc tính - đặt Nền tảng mục tiêu thành SQL Azure trong tab Cài đặt dự án. Ngoài ra, bạn có thể cấu hình thiết lập cho đầu ra dacpac. Sử dụng tệp này để nhập trực tiếp dưới dạng cơ sở dữ liệu SQL Azure mới.

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