SQL Server Management Studio 2012: Làm thế nào để có các thư mục trong dự án SSMS?


17

Tôi đang sử dụng SSMS 2012 để nói chuyện với máy chủ SQL 2012 và máy chủ SQL Azure mà chúng tôi sử dụng. Tôi thừa nhận tôi không phải là chuyên gia SQL vì vậy tôi đã lưu hầu hết các tập lệnh SQL của mình để tham khảo trong tương lai. Tôi đã nhanh chóng chạy vào khoảng 20 tập lệnh .Query trong dự án SSMS và tất cả chúng đều sống trong cùng một thư mục 'Truy vấn'.

Có cách nào để tôi có thể tạo "thư mục con" trong dự án để tôi có thể sắp xếp các tập lệnh của mình đúng cách không? Làm thế nào để hầu hết những người khác giữ kịch bản của họ được tổ chức? Tôi khá chắc chắn nếu điều này làm hỏng một người mới như tôi, nó phải là một vấn đề thực sự đối với quản trị viên thực sự (có khả năng hàng trăm tập lệnh?)


2
Tôi có một người bạn giữ tất cả các tập lệnh của mình trong một .sqltập tin khổng lồ . Bằng cách đó, bạn chỉ phải theo dõi một tệp.
Max Vernon

Tôi biết những người chỉ giữ họ trong một thư mục được đồng bộ hóa với tài khoản DropBox của họ. Sau đó, những người lưu nó trên SkyDrive của họ là tốt. Tôi không thực sự là một trong những người sử dụng các dự án trong SSMS.
Shawn Melton

Đây là nơi Trình quản lý tập lệnh có thể trở nên tiện dụng, nếu bạn đã quen với nó. Mặc dù tôi thích nó, nhưng đối với tôi nó không nhấp chuột. Tôi chỉ muốn lưu tập lệnh của mình cục bộ, trong một số thư mục mà tôi sao lưu trên DropBox. Không bao giờ thích các dự án SSMS, quá.
Mary

bạn có thể sử dụng SQLTreeo, đây là công cụ: sqltreeo.com

Câu trả lời:


7

Cuối cùng, các thư mục con đã được thực hiện trong SSMS 2016.

Người dùng thận trọng: Bạn có thể cài đặt SSMS 2016 và vẫn tiếp tục sử dụng cái cũ. Xem ghi chú [1]bên dưới.

Khi đó, hãy bắt đầu sử dụng các giải pháp thay vì các dự án .


Thư mục hoạt động như thế này:

Thêm thư mục con giải pháp:

  1. Bấm chuột phải vào mục giải pháp (gốc cây) và từ menu chọn Thêm > Thư mục giải pháp mới .
  2. Bước 1 bây giờ cũng hoạt động trên bất kỳ thư mục bạn đã thêm.

Thêm tập lệnh SQL:

  • Bấm chuột phải vào bất kỳ thư mục nào và từ menu Thêm của nó , thêm tệp SQL hiện có hoặc tệp SQL mới (trong danh sách, tìm loại mục có phần mở rộng SQL).

Dự án cũ tốt của bạn (Dự án cũ tồi)

  • Bạn vẫn có thể lưu trữ các dự án trong giải pháp của mình nếu bạn thấy chúng có lợi vì một số lý do cũ, cho việc lưu trữ kết nối, v.v. Chỉ cần thêm các dự án mới hoặc nhập các dự án hiện có vào giải pháp.

[1] Về nâng cấp:

  1. SQL Server 2008 - 2016 được SSMS hỗ trợ chính thức 2016. Xem thêm thông tin tại trang tải xuống. Đối với các phiên bản cũ hơn, bạn có thể giữ SSMS cũ yêu thích của mình, xem điểm 2 bên dưới.

    • cài đặt duy nhất có thể yêu cầu sự chú ý của bạn là Tùy chọn > SQL Server Object Explorer > Script cho phiên bản máy chủ > (đặt phiên bản máy chủ của bạn)
  2. Các phiên bản SSMS khác nhau sống tốt với nhau , tức là bạn có thể cài đặt SSMS 2008 và SSMS 2016 mà không gặp sự cố - đã được thử nghiệm.


Điều này là tiện dụng. Điều đáng chú ý là SSMS đang lưu trữ tất cả các tệp này trong một cấu trúc tệp phẳng trong một thư mục, do đó bạn không thể có một tệp có cùng tên trong hai thư mục khác nhau.
Jon

@Jon - Điều này không hoàn toàn đúng. Nó có thể trông khó hiểu ngay từ cái nhìn đầu tiên, nhưng cấu trúc tệp và thư mục được hiển thị trong cây dự án không phụ thuộc vào sự mất tập tin trên đĩa. Trên đĩa, nó không cần phải phẳng (chỉ cần thử lưu tệp mới ở nơi khác ...), bạn có thể phân phối chúng trong các thư mục theo ý muốn. Nói cách khác: giữ các tệp trong bất kỳ thư mục nào trong hệ thống tệp và sau đó bạn có thể thêm chúng vào bất kỳ thư mục ảo nào trong cây dự án SSMS. (Nếu tôi nhớ chính xác, thậm chí có thể sao chép các tham chiếu.) Nhược điểm: bạn cần tổ chức các tệp hai lần - trong thư mục và trong các thư mục dự án.
miroxlav

6

Trong SSMS, nếu bạn chưa hiển thị phần đính vào Trình duyệt mẫu, hãy chuyển đến Trình đơn, Chế độ xem, Trình khám phá mẫu (phím nóng Ctrl- Alt- T).

Các mẫu được tải từ máy cục bộ của bạn, từ thư mục này

C: \ Tệp chương trình (x86) \ Microsoft SQL Server \ 110 \ Tools \ Binn \ ManagementStudio \ SqlWorkbenchProjectItems \ Sql

Bạn có thể thêm các thư mục con tùy thích và thậm chí lồng chúng (thông qua Windows Explorer hoặc SSMS). Nếu tôi không nhầm, các thư mục chỉ được tải một lần cho mỗi lần khởi động SSMS, vì vậy bạn có thể phải khởi động lại SSMS để nhận các thay đổi thư mục từ hệ thống tệp.

p / s - Phương pháp này nhằm mục đích trình duyệt mẫu cho mục đích tổ chức các tập lệnh dự án!


Khác xa với một câu trả lời nhưng đây là bản hack ít bùn nhất được đề xuất cho đến nay! Cảm ơn bạn đã chia sẻ, tôi sẽ tiếp tục mở thêm vài ngày nữa ...
DeepSpace101

4

Đáng buồn là các dự án SSMS không hỗ trợ các thư mục con. Nếu bạn đang nói về thư mục mặc định mà SQL lưu nội dung vào, có, bạn có thể tạo các thư mục con trong đó. Đó chỉ là một thư mục trên ổ cứng của bạn. Thư mục đó được đặt trong "C: \ Users {username} \ Documents \ SQL Server Management Studio \ Project" theo mặc định.


2

Việc thiếu các thư mục con chắc chắn là bực bội. Tôi sẽ cố gắng sắp xếp công cụ của mình vào các dự án riêng biệt trong cùng một giải pháp. Mỗi người có một thư mục Truy vấn ... Tôi sẽ đặt tên cho các dự án theo cách tôi sẽ đặt tên cho các thư mục con (nếu tôi có thể tạo chúng!).


1

Thêm vào Câu trả lời 3, ở trên, giải quyết tình huống bằng cách tái định nghĩa các mẫu tại C: \ Program Files (x86) \ Microsoft SQL Server \ 110 \ Tools \ Binn \ ManagementStudio \ SqlWorkbenchProjectItems \ Sql.

Bạn sẽ phải thêm quyền vào tài khoản người dùng của máy để Kiểm soát hoàn toàn. (Nhấp chuột phải vào thư mục đích, Thuộc tính, chọn người dùng máy, Chỉnh sửa, v.v.)

Ngay cả sau đó, nó giống như Steve Balmer dẫn đầu giải pháp này ở đường chuyền. Bạn có thể lưu tệp ở đó nhưng khi nó được mở trong SSMS, nó không được mở dưới tên tệp .sql đó, đó là tên chung. Vì vậy, có tất cả sự nghiêm khắc này chỉ để giữ cho các truy vấn, chức năng, tập lệnh bảng, sprocs, v.v.

Câu trả lời tuyệt vời nhưng trên Windows 8.1, nó đã bị loại trừ.

Câu trả lời tốt nhất tôi có là lưu thông qua SSMS vào hệ thống tệp mà tôi nghĩ sẽ tôn trọng việc lồng các tệp .sql. Tôi phải tạo Dự án cơ sở dữ liệu trong Visual Studio 2013, trong đó tôi có thể thiết lập các thư mục khi chúng có ý nghĩa đối với dòng sản phẩm của tôi.

Nhưng tôi không thể mở các truy vấn này qua Server Explorer trong Visual Studio ... tuy nhiên sau đó có thể tổ chức các truy vấn ở một nơi nếu chúng đang hoạt động, Tập lệnh SPROC, Tập lệnh UDF, v.v.

Không có IDE để thực hiện loại công việc dự án này và vâng, theo lời của một người trả lời khác ở đây, điều đó thật đáng buồn.

Rầm rộ và đọc lại ở đây một chút ... nói cách khác tôi có thể có được cấu trúc thư mục tôi muốn với Dự án DB trong VS 2013 nhưng nếu tôi muốn đăng nhập vào một máy chủ từ xa để kiểm tra chúng, tôi phải truy cập tệp của chúng bằng tệp từ SSMS. Đau ở phía sau ... Tôi muốn một IDE làm điều này.


0

Tôi đã tiến bộ bằng cách chỉnh sửa thủ công tệp dự án SSMS để thêm các thư mục bên dưới giải pháp. Mở tệp .ssmssqlproj trong trình soạn thảo văn bản. Tìm kiếm các nút được gọi là LogicalFolder. Nút Linh tinh là một mô hình tốt cho những gì bạn cần làm.

Chỉ cần sao chép những dòng này và thay đổi tên vào thư mục bạn muốn xem. Cũng thay đổi giá trị Loại thành một cái gì đó độc đáo. Đây là những gì tôi đã làm.

<LogicalFolder Name="Tables" Type="4" Sorted="true">
  <Items />
</LogicalFolder>
<LogicalFolder Name="Functions" Type="6" Sorted="true">
  <Items />
</LogicalFolder>
<LogicalFolder Name="User-defined Table Types" Type="7" Sorted="true">
  <Items />
</LogicalFolder>

HÃY ĐỂ KIẾM MỘT BẢN SAO CỦA TẬP TIN DỰ ÁN (.ssmssqlproj). Nếu bạn làm hỏng việc chỉnh sửa, như tôi đã làm một vài lần, dự án sẽ không mở. Điều này sẽ không tệ lắm nếu bạn đã cài đặt bổ trợ TFS và đang kiểm tra các tệp dự án của mình - bạn chỉ có thể loại bỏ các thay đổi. Nhưng nếu không, hãy chắc chắn rằng bạn tạo một bản sao.

Sau đó, tôi tạo các thư mục theo giải pháp để khớp với các tên thư mục hợp lý. Sau đó, tôi đã tạo một kịch bản định nghĩa bảng và một kịch bản định nghĩa loại bảng do người dùng định nghĩa và lưu chúng trong các thư mục tương ứng của chúng. Chúng xuất hiện dưới thư mục "Khác" trong trình thám hiểm giải pháp, vì vậy tôi kéo chúng vào các thư mục thích hợp.

Đây là nơi mọi thứ đổ vỡ. Bởi vì, tôi nghĩ rằng, tất cả các thủ tục, hàm, bảng và loại được lưu trữ đều nằm trong các tệp có phần mở rộng .sql. Bởi vì các tệp .sql, chúng được đặt trong thư mục Queries trong trình khám phá giải pháp. Tuy nhiên, chúng vẫn nằm trong các thư mục bên phải trên đĩa. Vì vậy, đó là một bước đi đúng hướng.

Tôi muốn xem liệu thuộc tính "Loại" trong tệp dự án có tương ứng với một phần mở rộng tệp cụ thể không và liệu tôi có thể tìm ra chúng là gì không. Nếu tôi có thể có được các phần mở rộng phù hợp thì SSMS sẽ đặt các tệp vào thư mục dự án phù hợp.

Tôi có thể nhìn vào Visual Studio để xem nó hoạt động như thế nào, vì SSMS dựa trên Visual Studio, theo màn hình giật gân của họ.

Tuy nhiên, tôi đang ở giữa đó, vì vậy có lẽ một trong số các bạn có thể tìm ra phần còn lại!


Điều này đã không làm việc cho tôi. Nó không mở được.
Soham Dasgupta
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.