Cách tạo từ khóa viết hoa SSMS


23

Gần đây tôi đã bắt đầu sử dụng Management Studio 2012. Khi sử dụng MySQL Workbench, một tính năng tiện dụng là tôi có thể giữ nguyên chữ in thường và mọi từ dành riêng (như SELECT, INSERT) sẽ tự động chuyển thành chữ hoa. Làm cách nào để sao chép hành vi này trong SSMS?


3
Có ai khác thấy điều này thực sự không khả thi? Phải nhấn CAPS cho các từ dành riêng sau đó một lần nữa để nhập tên biến vv? Nó thực sự làm chậm việc đánh máy của tôi.
David Folksman

Tất nhiên luôn có tùy chọn không làm cho các từ khóa viết hoa. Không dễ đọc, nhưng bạn không cần phải nhấn phím shift. :)
Kenneth Fisher

wow chỉ cần trở lại này. Làm thế nào để tôi thêm quảng cáo vào bài viết này haha!
David Folksman

Câu trả lời:


28

Không, Management Studio không có chức năng gốc này trong bất kỳ phiên bản nào từ năm 2005 -> 2016 CTP 3.2. Bạn có thể muốn kiểm tra các bổ trợ của bên thứ 3, như Gói công cụ SSMS của Mladen Prajdić hoặc Dấu nhắc SQL của Red-Gate , cả hai đều có khả năng định dạng một khối mã, bao gồm các từ khóa viết hoa tự động. Tuy nhiên tôi không biết bất kỳ công cụ nào sẽ tự động làm điều này khi bạn nhập.

Đối với tôi, tôi đã làm điều đó quá lâu, nó cứ tự nhiên đến, và không nhấn Shiftsẽ thực sự làm tôi chậm lại. Khi tôi nhận được mã của người khác trong đó các từ khóa viết thường, tôi đánh dấu toàn bộ khối hoặc các phần vi phạm và nhấn Ctrl+ Shift+ U. Nếu tôi phải làm nổi bật toàn bộ phần, thì tôi sẽ nhập tên đối tượng / cột và sử dụng IntelliSense để xử lý chúng một cách chính xác (Tôi có một câu hỏi thực sự về việc đảm bảo rằng tất cả các từ khóa đều là chữ hoa và tất cả các tên thực thể khớp chính xác với siêu dữ liệu , bởi vì bạn không bao giờ biết khi nào mã của bạn sẽ được triển khai cho đối chiếu phân biệt chữ hoa chữ thường).


Không thể tin được rằng SSMS không có tính năng này được xây dựng nguyên bản!
nanonerd

15

Ngoài các giải pháp đã được đề cập, tôi khuyên bạn nên sử dụng ApexSQL Refactor - bổ trợ SSMS và Visual Studio miễn phí.

ApexQuery Refactor có thể giúp bạn tạo các tiêu chuẩn định dạng SQL của riêng bạn. Nó có thể được sử dụng để phân phối và thực thi các quy tắc định dạng SQL giữa các thành viên trong nhóm. Để thực hiện định dạng viết hoa, nó là đủ để:

  1. Tải xuống ApexQuery Refactor
  2. Khởi chạy SQL Server Management Studio hoặc Visual Studio của bạn và nhấp vào ApexSQL Refactor trên menu chính
  3. Từ menu ApexQuery Refactor, bấm vào tùy chọn Định dạng mã T-SQL
  4. Chọn tùy chọn định dạng Đặt tùy chọn cụ thể (Viết hoa)
  5. Xem trước hiệu ứng của tùy chọn đối với truy vấn hiện tại hoặc ví dụ tích hợp

Định dạng viết hoa Lưu ý: Trước khi định cấu hình tiêu chuẩn viết hoa, đảm bảo cơ sở dữ liệu của bạn không có đối chiếu phân biệt chữ hoa chữ thường. Điều này có thể gây ra vấn đề lớn khi chơi với viết hoa.

Nếu bạn muốn tìm hiểu thêm, tôi khuyên bạn nên đọc 2 bài viết này để xem cách viết hoa được xử lý với ApexQuery Refactor:


7

Một giải pháp rất đơn giản: sử dụng notepad ++ . Bên trong có một plugin rất tốt có tên là định dạng sql của Poor man . Hạn chế là bạn phải dán SQLbên trong notepad++. Nhưng nó là miễn phí .

Ngoài ra còn có một trang web , nhưng tôi đã không thử nó.


2
Ông cũng đã viết một trình cắm cho SSMS. Tôi sử dụng nó và giới thiệu nó mọi lúc.
Jonathan Fite

Tôi không biết rằng tôi sẽ thử nó cho chắc chắn! 10 lần cho nhận xét @Jonathan Fite!
Bogdan Bogdanov

5

Máy in SQL khá tốt cho tôi. Đây là một plugin nhỏ và dễ cài đặt cho SSMS. Bạn thiết lập tùy chọn của mình và sau đó bất cứ khi nào bạn muốn định dạng mã, chỉ cần nhấp vào biểu tượng trên thanh công cụ của nó.


3
FYI: Dùng thử miễn phí, hoặc $ 50 để mua hàng.
kmote

4

Tôi đã tìm thấy một viên ngọc ẩn cho định dạng chữ hoa / chữ thường và tự động thụt vào SSMS mà tôi sẽ sử dụng mãi mãi. Không còn "Truy vấn mới".

  • Tên bảng Rt-Click trong Object Explorer
    • Chỉnh sửa 200 hàng đầu
      • Tùy chọn menu QueryDesigner
        • Ngăn
          • SQL. Viết hoặc thả vào một số SQL xấu xí, không được định dạng. QueryDesigner
            • Xác minh Cú pháp SQL sẽ UC dành riêng các từ và thụt lề cho bạn.
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.