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

CHUYỂN ĐỔI sự cố trong sqlserver với lỗi Msg 529

Bạn không thể chuyển đổi từ text đến datetime

Bạn phải áp dụng hai thao tác chuyển đổi.

Đầu tiên:Từ văn bản thành varchar

Thứ hai:Từ varchar đến datetime

Vì vậy, truy vấn của bạn sẽ trở thành:

SELECT CONVERT(datetime,
       CONVERT(varchar(30),value), 103)
FROM results

Thêm:text kiểu dữ liệu không được chấp nhận cho các phiên bản mới của Sql Server, vì vậy tôi thực sự khuyên bạn nên thay đổi (nếu có thể) kiểu dữ liệu của bạn text thành varchar(max) .

Mã DDL để áp dụng thay đổi của bạn là:

ALTER TABLE results ALTER COLUMN value varchar(max)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2012:giải nén nhóm Regex

  2. Xử lý NULL trong SQL Server

  3. Nhận giá trị trả về từ thủ tục được lưu trữ trong C #

  4. Một câu lệnh SQL Server duy nhất có phải là nguyên tử và nhất quán không?

  5. Làm thế nào để chuyển đổi varchar thành date chỉ khi nó chứa một ngày hợp lệ?