RSS

カテゴリー : 2007年 2月

[SQLServer] equal to 操作での照合順序の競合を解決できません。

異なるテーブルなどを結合するSQLにおいて
equal to 操作での照合順序の競合を解決できません
というエラーが表示される場合がある。

たとえば
互いに MODEL_IDという varchar列を持つ、TABLE_AとTABLE_Bにおいて

とした場合、普通に問題のないSQLなのだが
TABLE_A が Japanese_Bin
TABLE_B が Japanese_CI_AI_KI
だったりすると、エラーとなる場合がある。
(SQL Serverの照合順序とは文字列の並び替えや比較に関連して出てくるキーワード。
文字の取り扱いが異なる2テーブルのvarchar列を比較するので問題になる。)

一時的には

など、COLLATE句を使用すれば解決するだろう。

本当はテーブル設計とかデータインポートの時に気をつけるべき。

See Also :
Microsoft SQL Server 2000 のインターナショナル機能

[Windows] Junktion Point ジャンクションポイントの作成方法

http://tumblr.case-of-t.net/post/13333379450

以下はMicrosoftのページ(機械翻訳まま)

NTFS 接合点のプレビュー ツール
弊社は、NTFS 接合点の作成と操作用の以下の 3 つのユーティリティを提供しています。
Linkd.exe
「 対象フォルダを Windows 2000 バージョンの NTFS フォルダに接続します。
「 NTFS 接合点のターゲットを表示します。
「 Linkd.exe で作成された NTFS 接合点を削除します。
「 場所 :Microsoft Windows 2000 Resource Kit

Mountvol.exe
「 ローカル ボリュームのルート フォルダを Windows 2000 バージョンの NTFS フォルダに接続 (またはボリュームを "マウント") します。
「 ボリュームのマウントに使用される NTFS 接合点のターゲットを表示します。
「 利用可能なローカル ファイル システム ボリュームを一覧表示します。
「 mountvol.exe により作成されたボリューム マウント ポイントを削除します。
「 場所 : Windows 2000 CD-ROM のI386 フォルダ

Delrp.exe
「 このツールは NTFS 接合点を削除します。また、接合点の下のエンティティである別のタイプのリパース ポイントの削除も行います。
「 Delrp.exe は主にリバース ポイントを作成する開発者向けです。
「 場所 : 検討中