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

Chuyển đổi không thành công khi chuyển đổi từ một chuỗi ký tự thành mã định danh duy nhất

điều này không thành công:

 DECLARE @vPortalUID NVARCHAR(32)
 SET @vPortalUID='2A66057D-F4E5-4E2B-B2F1-38C51A96D385'
 DECLARE @nPortalUID AS UNIQUEIDENTIFIER
 SET @nPortalUID = CAST(@vPortalUID AS uniqueidentifier)
 PRINT @nPortalUID

cái này hoạt động

 DECLARE @vPortalUID NVARCHAR(36)
 SET @vPortalUID='2A66057D-F4E5-4E2B-B2F1-38C51A96D385'
 DECLARE @nPortalUID AS UNIQUEIDENTIFIER
 SET @nPortalUID = CAST(@vPortalUID AS UNIQUEIDENTIFIER)
 PRINT @nPortalUID

sự khác biệt là NVARCHAR(36) , tham số đầu vào của bạn quá nhỏ!




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhóm kết hợp trong SQL Server

  2. Cách T-SQL hiệu quả nhất để đệm một varchar ở bên trái đến một độ dài nhất định?

  3. Cách thêm AM / PM vào giá trị thời gian trong SQL Server (T-SQL)

  4. Cách áp dụng màu sắc trong đầu ra powershell

  5. Chuẩn bị một máy ảo mới cho SQL Server 2014 CTP1