Tôi đang chạy một khá chuẩnTại sao không thể SQL Server cho tôi biết là cột gây ra lỗi
INSERT INTO [table] (col1, col2, ...coln)
select * from #temp
và tôi nhận được lỗi sau:
Msg 245, Level 16, State 1, Line 1
Conversion failed when converting the varchar value 'NULL' to data type int.
Tôi hiểu lỗi, nhưng muốn biết tại sao cột gây ra vấn đề không được nhận dạng bởi thông báo lỗi. Có cách nào dễ dàng để tìm cột nào chứa null nghịch ngợm hay chỉ là một mưu đồ để làm cho tôi trông giống như tôi đang làm việc hiệu quả trong khi tôi thực sự chỉ dành 30 phút để xem một tập kết quả khổng lồ mà không đi đâu?
Chỉnh sửa: Cảm ơn các bạn đã giúp đỡ nhưng không ai thực sự trả lời câu hỏi. Do tất cả các RDBMS's spew ra thông báo lỗi tương tự là hoặc một số hữu ích hơn? 2012 của nó ... thử nghiệm và lỗi trên có thể hàng ngàn cột nên được chết!
Thật khó chịu - đã đồng ý - nhưng không có cách nào để tìm thấy điều này, thực sự, ngoài thử nghiệm và lỗi. Trên bất kỳ cột nào mà bạn mong muốn là số, hãy thử sử dụng 'ISNUMERIC (columnName)' và xem bạn có nhận được bất kỳ giá trị không mong muốn nào của '0' –
hay không. Tôi biết rằng, là một lập trình viên, tôi không kiếm được quyền cho các thông báo lỗi tốt hơn, bởi vì các thông báo lỗi của riêng tôi đều khó hiểu như nhau :) – dasblinkenlight
@ brandy không liên quan ...Tôi đã đơn giản hóa nó cho ví dụ – woggles