Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để xác định lỗi không chuyển đổi được varchar thành int trong SQL?

Bạn có thể sử dụng một biểu thức chính quy để xác định trường nào sẽ không chuyển đổi đúng cách.

SELECT * 
FROM example 
WHERE xyz LIKE '%[^0-9]%'

Các bản ghi trả về là bản ghi sẽ không ĐÚC đúng khi bạn thay đổi bảng của mình. Các số thập phân được lưu trữ trong các trường varchar cũng sẽ không được chuyển thành int.

Cân nhắc:

select CAST('1.1' as int) - điều này trả về một lỗi.

Chúc các bạn thành công.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SqlParameter đã được chứa bởi một SqlParameterCollection khác - Việc sử dụng () {} có gian lận không?

  2. Kịch bản thời gian thiết kế SQL-Server DB (phân tán hoặc tập trung)

  3. Nhóm và tổng hợp dữ liệu hàng thành cột trong MS-SQL?

  4. Thực thi truy vấn SSRS không thành công cho tập dữ liệu

  5. SQL:Lấy số lượng từ nhiều bảng cho một bản ghi người dùng trong bảng USER. Cách tiếp cận tốt nhất là gì?