ホームページ >データベース >mysql チュートリアル >SQL Server で VARCHAR UUID を UNIQUEIDENTIFIER に効率的に変換するにはどうすればよいですか?
SQL Server: VARCHAR UUID を UNIQUEIDENTIFIER に効率的に変換する
一部のデータベースは UUID (Universally Unique Identifier) を VARCHAR として保存するため、UNIQUEIDENTIFIER
データ型を必要とする .NET GUID を操作するときに互換性の問題が発生します。 CAST
または CONVERT
を使用した直接変換は、VARCHAR 表現にハイフンがないために失敗することがよくあります。
このソリューションは、これらの VARCHAR UUID を正しい UNIQUEIDENTIFIER
形式に変換する効率的な SQL Server メソッドを提供します。
<code class="language-sql">DECLARE @uuid VARCHAR(50) SET @uuid = 'a89b1acd95016ae6b9c8aabb07da2010' SELECT CAST( SUBSTRING(@uuid, 1, 8) + '-' + SUBSTRING(@uuid, 9, 4) + '-' + SUBSTRING(@uuid, 13, 4) + '-' + SUBSTRING(@uuid, 17, 4) + '-' + SUBSTRING(@uuid, 21, 12) AS UNIQUEIDENTIFIER)</code>
このクエリの仕組みは次のとおりです:
VARCHAR
変数 @uuid
が宣言され、サンプル UUID 文字列で初期化されます。SUBSTRING
関数は、UUID 文字列の必要な部分を抽出します。CAST
は、正しくフォーマットされた文字列を UNIQUEIDENTIFIER
に変換します。このアプローチでは、元のテーブルへのスキーマの変更が回避され、変換プロセスが完全に SQL Server 内に保持されるため、効率が向上します。
以上がSQL Server で VARCHAR UUID を UNIQUEIDENTIFIER に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。