Ok Tôi đang sử dụng SQL Server 2008 và có trường bảng loại VARCHAR(MAX)
. Vấn đề là khi lưu thông tin bằng cách sử dụng Hibernate
, nội dung của trường VARCHAR(MAX)
sẽ bị cắt bớt. Tôi không thấy bất kỳ thông báo lỗi nào trên máy chủ ứng dụng hoặc máy chủ cơ sở dữ liệu.Trường Máy chủ SQL bị cắt bớt
Nội dung của trường này chỉ là một tệp văn bản thuần túy. Kích thước của tệp văn bản này là 383KB.
Đây là những gì tôi đã làm cho đến nay để khắc phục vấn đề này:
Thay đổi lĩnh vực cơ sở dữ liệu từ
VARCHAR(MAX)
để văn bản và cùng vấn đề xảy ra.sử dụng SQL Server Profiler và tôi nhận thấy rằng toàn văn nội dung đang được
nhận bởi máy chủ cơ sở dữ liệu, nhưng đối với một số lý do các hồ sơ bị đóng băng khi cố gắng để xem các SQL với vấn đề cắt ngắn. Như tôi đã nói, ngay trước khi nó bị đóng băng, tôi
đã nhận thấy rằng nội dung tệp văn bản đầy đủ (383KB) đang được nhận, vì vậy có vẻ như rằng đó có thể là sự cố cơ sở dữ liệu.
Có ai gặp phải sự cố này trước đây không? Bất kỳ ý tưởng gì gây ra sự cắt xén này?
LƯU Ý: chỉ muốn đề cập đến rằng tôi chỉ đang đi vào SQL Studio và chỉ cần sao chép nội dung trường văn bản và dán nó vào Textpad. Đó là cách tôi nhận thấy nó bị cắt ngắn.
Xin cảm ơn trước.
Một ý kiến cho rằng không có gì để làm với câu trả lời của tôi: ngừng sử dụng Profiler. Thay vào đó hãy sử dụng theo dõi phía máy chủ. –
@AaronBertrand Bạn có thể giải thích tại sao bạn tư vấn cho Profiler không? – Apostrofix
@Apostrofix Vì Profiler có thể đưa máy chủ của bạn đến đầu gối. Vì vậy, có thể một dấu vết và do đó có thể mở rộng sự kiện, nhưng nó dễ dàng hơn nhiều để làm với Profiler. Từ [bài viết này] (http://sqlperformance.com/2012/10/sql-trace/observer-overhead-trace-extended-events): 'SQL Server Profiler là một công cụ cần tránh trên các máy chủ sản xuất bận rộn, như được hiển thị bởi sự gia tăng gấp mười lần trong thời gian và giảm đáng kể thông lượng cho replay.' –