Khi cố gắng xác định dữ liệu sai (thường cần xem xét và xóa thủ công), tôi muốn có một cách dễ dàng để nhìn thấy các ký tự ẩn, chẳng hạn như TAB, Space, Carriage return và Line feed. Có cách nào được tích hợp sẵn không?Cách tốt nhất để xác định các ký tự ẩn trong kết quả của truy vấn trong SQL Server (Query Analyzer) là gì?
Trong một câu hỏi tương tự ở đây trên stackoverflow, liên quan đến Oracle, một hàm DUMP (fieldname) đã được đề xuất, nhưng tôi không biết điều đó có làm cho mọi việc trở nên dễ dàng hơn ngay cả khi một hàm tương ứng sẽ tồn tại trong SQL Server, vì tôi cần để xem Nhân vật trong ngữ cảnh của họ.
Ý tưởng tốt nhất mà tôi có thể đưa ra được thay thế các nhân vật ẩn mong đợi với những người có thể nhìn thấy, như thế này:
SELECT REPLACE(REPLACE(REPLACE(REPLACE(myfield, ' ', '˙'), CHAR(13), '[CR]'), CHAR(10), '[LF]'), CHAR(9), '[TAB]') FROM mytable
Có cách nào tốt hơn? Tôi không thích cách này vì có thể có các ký tự ẩn ít phổ biến hơn mà tôi không tính đến như TAB dọc… .. Bật "hiển thị ký tự ẩn", như bạn có thể thực hiện ở hầu hết mọi trình soạn thảo văn bản, sẽ là một tính năng tuyệt vời trong SQL Server Query Analyzer, vì vậy tôi gần như mong đợi rằng nó có thể được thực hiện bằng cách nào đó trong SQL server ... hoặc ít nhất là ai đó có ý tưởng tốt hơn tôi, để thể hiện loại không gian trắng này thông tin.
Tôi chỉ nhận thấy rằng có một cách tích hợp để xem "không gian trắng", không phải trong SQL Query Analyzer, nhưng trong phần giao diện đã từng là trình quản lý SQL Enterprise. Nhấn chuột phải vào một bảng trong cây SQL Management Studio Object Explorer và chọn "Edit top 200 rows". Trong kết quả không gian màu trắng (ít nhất là CR LF) được hiển thị dưới dạng hình vuông trống.
Bạn có tập hợp các ký tự "tốt" hữu hạn không? Bạn có thể sử dụng CLR để sử dụng một thay thế REGEX? – gbn
Phần khó khăn là các ký tự "xấu" đôi khi có thể được cho phép. Đó là lý do tại sao tôi cần quan sát tất cả các ký tự ẩn trong ngữ cảnh văn bản của chúng. Mã REPLACE ở trên thực sự đạt được những gì tôi cần cho thời điểm này (đối với khách hàng này, tôi khá chắc chắn rằng không có ký tự trắng nào khác so với các ký tự cứng trong phần Thay thế ở trên), nhưng tôi đang tìm kiếm một cách đơn giản hơn , toàn năng hơn "hiển thị các ký tự ẩn" tùy chọn, mà sẽ làm việc trên tất cả các dịp. –