Tôi có một thủ tục được lưu trữ chèn 650 trường vào một bảng. Việc chèn không thành công với lỗi cắt ngắn.
Thật đơn giản
INSERT INTO
SELECT (a bunch of fields)
FROM (a bunch of tables)
Dưới đây là thông báo lỗi:
Msg 8152, Cấp 16, Trạng thái 14, Quy trình DSP_Procedure, Dòng 1075 Chuỗi hoặc dữ liệu nhị phân sẽ bị cắt ngắn.
Có cách nào nhanh chóng để tôi có thể xác định trường nào gây ra lỗi cắt ngắn không?
Việc câu lệnh select được chèn vào bảng có 650 trường khiến cho việc xác định trường nào gây ra lỗi cắt ngắn khó khăn.
Tôi nghĩ rằng tôi có thể nhận xét các khối trường tại một thời điểm để chỉ có SP chèn 100 trường cùng một lúc và sau đó chạy SP 6 hoặc 7 lần khác nhau cho đến khi tôi ít nhất có thể thu hẹp vào một nhóm 100 trường sẽ chứa trường gây ra lỗi cắt ngắn.
Ngoài ra, tôi nghĩ rằng có lẽ tôi chỉ có thể SELECT INTO
một bảng mới và sau đó so sánh độ dài dữ liệu trong bảng với độ dài dữ liệu của bảng mục tiêu mà tôi đang cố gắng chèn vào SP của mình để xem trường nào chứa chiều dài trường dài hơn dự kiến. ..
Tôi đang sử dụng SQL Server 2014.
Bất kỳ lựa chọn thay thế dễ dàng hơn?