Gói công cụ SSMS thay thế [đã đóng]


18

Có công cụ nào ngoài đó có thể so sánh với SSMS Tools Pack 2012 không? Việc cấp phép ($ 30 mỗi máy, $ 100 cho bất kỳ số lượng máy nào ... trong 3 tháng) để lại rất nhiều mong muốn và tôi không chắc chắn về những lựa chọn khác có sẵn.

Ví dụ, một điều mà tôi thực sự nhớ là "Lưu mọi truy vấn bạn chạy". Khi mày mò và nghiên cứu, việc sao lưu các phiên bản truy vấn khác nhau là vô giá khi tôi chạy chúng. Hoặc khi tôi nhận ra tôi không có bản sao lưu của truy vấn tôi đã làm việc cách đây 2 tháng.

Làm rõ: SQL Server Management Studio không có hỗ trợ addon chính thức, nhưng có một số công cụ hiện có. Gói công cụ SSMS là gói mà tôi rất thích (phiên bản 2005, 2008), nhưng phí cấp phép cho năm 2012 thật kinh khủng. (Tôi sẽ trả tiền cho một giấy phép hợp lý, nhưng đó không phải là câu hỏi ở đây.)

Tôi đã tìm thấy SSMS Boost chẳng hạn, có một số bổ sung thú vị cho SSMS có vẻ đáng giá.

Những bổ trợ nào khác có sẵn cho SQL Server 2012? Tôi muốn có một cái gì đó lưu một truy vấn khi tôi nhấn F5 như SSMS Tools Pack, hoặc bất cứ thứ gì ngoài hai công cụ được liệt kê?


1
Tôi cũng có suy nghĩ tương tự về chi phí. Có một số addins SSMS trên codeplex, vì vậy có thể gõ một addin "Lưu mọi truy vấn bạn chạy" dựa trên những addin có thể không quá khó.
Martin Smith

@MartinSmith Vâng, tôi đã đăng SSMS Boost - Dường như cũng có một cách nhanh chóng về cách tạo addins, cũng như các tính năng thú vị khác. Tôi không phải là một phát minh lại bánh xe nếu tôi không có quá, nhưng tôi có thể phải đi tuyến đường này nếu nó không có sẵn: ssmsboost.com/...
WernerCD

1
Xin chào, tôi là người tạo SSMSBoost. Chúng tôi đã tiến hành tính năng "Lưu mọi truy vấn bạn chạy", nó sẽ được phát hành trong vòng khoảng 1 tháng. Vui lòng sử dụng diễn đàn của chúng tôi để viết các yêu cầu / điểm mà bạn muốn có trong tính năng này. (hoặc viết thư cho support@ssmsboost.com)
Andrei Rantsevich

2
Xin chào, chỉ để cho bạn biết rằng tôi đã thêm các tùy chọn cấp phép mới vào Gói công cụ SSMS. Gửi cho tôi một email nếu bạn có bất kỳ câu hỏi về nó. Nếu bạn không thích nó, tôi chắc chắn chúng ta có thể làm việc gì đó. :) Thành thật mà nói SSMSBoost trông khá tuyệt.
Mladen Prajdic

@MladenPrajdic Tôi sẽ thành thật, tôi thích bộ thuật ngữ này RẤT NHIỀU. Tôi thực sự sẽ xem xét phiên bản 100 đô la (mặc dù nhiều hơn một chút so với số tiền tôi muốn chi tiêu ... Tôi đã quen với việc bán hàng và / hoặc giảm giá cho sinh viên lol). Mong đợi một email sớm với một vài câu hỏi.
WernerCD

Câu trả lời:


9

Tôi nghĩ rằng tôi đã chơi với điều này và với mục tiêu đã nêu là có một cái gì đó "Lưu mọi truy vấn bạn chạy" hoạt động trên SQL Server 2012 SSMS, đây dường như là công việc trên máy của tôi (Thêm kiểm tra / xử lý lỗi của riêng bạn / tái cấu trúc)

Nó dựa trên dự án mẫu của Andrei với Connectlớp được thay thế. Các dự án SSMSAddin2012 trên CodePlex cũng rất hữu ích.

namespace SSMSAddin
{
    using System;
    using System.IO;
    using System.Windows.Forms;
    using EnvDTE;
    using EnvDTE80;
    using Extensibility;
    using Microsoft.SqlServer.Management.UI.VSIntegration;

    public class Connect : IDTExtensibility2
    {
        private DTE2 application;
        private CommandEvents executeSqlEvents;

        public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom)
        {
            this.application = (DTE2)application;
            this.executeSqlEvents = this.application.Events.CommandEvents["{52692960-56BC-4989-B5D3-94C47A513E8D}", 1];
            this.executeSqlEvents.BeforeExecute += this.executeSQLEvents_BeforeExecute;
        }

        private void executeSQLEvents_BeforeExecute(string guid, int id, object customin, object customout, ref bool canceldefault)
        {
            try
            {
                Document document = ((DTE2)ServiceCache.ExtensibilityModel).ActiveDocument;
                var textDocument = (TextDocument)document.Object("TextDocument");

                string queryText = textDocument.Selection.Text;

                if(string.IsNullOrEmpty(queryText))
                {
                    EditPoint startPoint = textDocument.StartPoint.CreateEditPoint();
                    queryText = startPoint.GetText(textDocument.EndPoint);
                }

                DateTime now = DateTime.Now;
                string folderPath = string.Format(@"E:\SSMS Queries\{0}", now.ToString("yyyyMMdd"));
                string fileName = now.ToString("HHmmss-FFFFFFF") + ".sql";
                Directory.CreateDirectory(folderPath);
                string fullPath = Path.Combine(folderPath, fileName);
                File.WriteAllText(fullPath, queryText);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

        #region Other Interface Methods

        public void OnDisconnection(ext_DisconnectMode disconnectMode, ref Array custom) { }

        public void OnStartupComplete(ref Array custom) { }

        public void OnAddInsUpdate(ref Array custom) { }

        public void OnBeginShutdown(ref Array custom) { }

        #endregion
    }
}

1
Hoàn thành tốt :) Chúng tôi đã thực sự triển khai tính năng này - nó sẽ có trong SSMSBoost 2.7 (Nó quá ngắn cho phiên bản 2.6 sẽ được phát hành vào cuối tuần này). Vì vậy, sau 2-4 tuần, nó sẽ trực tuyến với một số tùy chọn tùy chỉnh ...
Andrei Rantsevich

@AndreiRantsevich - Tôi chắc chắn rằng tính năng của bạn sẽ đầy đủ hơn nhiều! Tôi chỉ muốn một cái cớ để chơi với Addins.
Martin Smith

Tôi rất vui khi biết rằng bạn có thể sử dụng dự án của tôi làm khởi nghiệp để xây dựng mẫu của bạn. Bạn có sử dụng SSMSBoost không? Nếu bạn có bất kỳ mong muốn - gửi cho tôi một e-mail, tôi sẽ xem xét thực hiện chúng. Tôi có thể tưởng tượng rằng bạn có một cái gì đó, bạn muốn có trong SSMS, theo như bạn đã tìm thấy dự án mẫu :). Bạn có thể xem v2.6 beta-notify, mà tôi đã xuất bản ngày hôm nay - nó có rất nhiều tính năng hay mới! ssmsboost.com/social/ từ
Andrei Rantsevich

@AndreiRantsevich - Điều duy nhất nảy ra trong đầu tôi lúc này có lẽ là điều mà ít người khác ngoài tôi sẽ thấy hữu ích. Tôi muốn một cách để xuất kế hoạch thực hiện dưới dạng hình ảnh với một số thuộc tính toán tử được chú thích trên hình ảnh. Có lẽ tôi sẽ tự mình đi.
Martin Smith

1
@WernerCD Không gian tên đó xuất hiện SqlWorkbench.Interfaces.dllSqlPackageBase.dllcả hai đều nằm trong C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudiomáy của tôi
Martin Smith

10

Một số thông tin thêm từ nhà phát triển SSMSBoost. Ngay khi bạn đề cập đến dự án của tôi, tôi cho phép mình viết một số từ về dự án. Lý do chính tôi đã viết công cụ này là tôi đã bỏ lỡ các tính năng năng suất, liên quan đến các nhiệm vụ theo định hướng phát triển T-SQL và DBA. Ví dụ:

  1. chuyển đổi kết nối thường xuyên giữa các máy chủ khác nhau
  2. viết 1000 lần một ngày "chọn * từ" ...
  3. xuất kết quả lưới sang excel / xml
  4. giữ một danh sách các kết nối yêu thích
  5. có cảnh báo từ SSMS khi kết nối với môi trường sống

tất cả những điều này và một số hoạt động hàng ngày khác được áp dụng trong SSMSBoost và đã được cải tiến liên tục. Hiện tại tôi phát hành phiên bản mới cứ sau 30 - 40 ngày. Trong 3 phiên bản gần đây, tôi cũng đã nhận được rất nhiều phản hồi tích cực / mang tính xây dựng và nhiều tính năng đã được cải thiện. Đề xuất của bạn để lưu mọi truy vấn được thực hiện cũng sẽ sớm được thực hiện. Như tôi đã viết - nếu bạn muốn có một cái gì đó đặc biệt hãy viết cho tôi một e-mail (support@ssmsboost.com)


Tuyệt vời :) Tôi chưa có cơ hội để bắt đầu thử nghiệm một số tính năng tôi thấy (tôi quan tâm nhất đến tùy chọn "truy vấn định dạng", không phải là các tính năng khác), nhưng tôi chắc chắn đã tải xuống để cài đặt bất cứ nơi nào tôi sử dụng SSMS. Tôi sẽ theo dõi cập nhật đó.
WernerCD

Tôi vừa đọc bài viết của bạn được liên kết bởi OP và nghĩ rằng tôi sẽ xem mẫu. Tôi đã cài đặt phiên bản RTM của studio quản lý 2012 nhưng không thấy SqlPackageBase.dll. Không thể tìm thấy nhiều tài liệu tham khảo về điều này trên Google. Bạn có chắc chắn nên cài đặt nó với SSMS không?
Martin Smith

Có - nó được cài đặt với SSMS. Đây là các phiên bản của tôi: Microsoft SQL Server Management Studio 11.0.2100.60 Các thành phần truy cập dữ liệu của Microsoft (MDAC) 6.1.7601.17514 Microsoft MSXML 3.0 4.0 6.0 Hệ điều hành 6.1.7601 DLL nằm trong thư mục này: C: \ Program Files (x86) \ Microsoft Máy chủ SQL \ 110 \ Công cụ \ Binn \ ManagementStudio \ SqlPackageBase.dll
Andrei Rantsevich

@AndreiRantsevich - Ah tôi x64cũng vậy và đang tìm kiếm trong C:\Program Files\Microsoft SQL Server\110\Tools\Binn\ManagementStudioCảm ơn! (Có thể đáng để đề cập đến điều này trong bài viết nơi bạn nêu các đường dẫn)
Martin Smith

Vẫn kiên nhẫn chờ đợi bản phát hành của bạn btw :)
WernerCD

4

Một lựa chọn miễn phí và rất đẹp và thân thiện với người dùng khác là SQL Hunting Dog.

http://www.sql-hunting-dog.com

nó hoạt động với studio quản lý SQL Server 2008/2012 và cung cấp cho bạn một điều hướng tốt hơn nhiều (tuy nhiên nó có ít tính năng hơn ssmstoolpack.)

nhỏ làm sao


Tôi thích vẻ ngoài này. Trông mượt mà và tuyệt vời. Chắc chắn dường như không có "bề rộng" mà các gói công cụ có, nhưng tôi thực sự thích vài thứ nó làm - vì nó dường như làm tốt chúng.
WernerCD

Vâng, tôi không cố gắng cạnh tranh với gói công cụ. Chỉ cần cố gắng để xây dựng điều hướng tốt đẹp và trơn tru và tìm kiếm nhanh chóng.
AlexTheDeveloper

Một đề nghị - chúng tôi làm việc với nhiều cơ sở dữ liệu trong công ty của chúng tôi. Thật tuyệt nếu công cụ sẽ mặc định kết nối cơ sở dữ liệu của Cửa sổ truy vấn hiện tại. Hoặc có một tùy chọn để mặc định cho một cơ sở dữ liệu cụ thể.
Gabe

1

Nó không miễn phí nhưng SqlSmash cũng là một addin cho SSMS 2012, 2014.

Tuyên bố miễn trừ trách nhiệm: Tôi là nhà phát triển cho sản phẩm

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.