sql >> データベース >  >> RDS >> Sqlserver

文字列からuniqueidentifierへの変換時に変換に失敗しました

    これは失敗します:

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

    これは機能します

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

    違いはNVARCHAR(36)です 、入力パラメータが小さすぎます!




    1. Toad for Oracle ..複数のステートメントを実行する方法は?

    2. SQL Serverでカスケード削除を使用するにはどうすればよいですか?

    3. 演算子間のSQL

    4. Moodle3.9でデータベーストラフィックの読み取り/書き込み分割を使用してパフォーマンスを向上させる