私は任意の言語でデータを保存することになっているデータベースを持っています。どのロケールであるかを示す列があるため、データベースの照合に頼ることができず、クエリで実行時に照合を指定する必要があります。
EF
EFを使用すると実行時に照合を指定できないことがわかっているため、データアクセスに使用したいという問題もあります。Linq
照合を引数として取り、その関数をすべてのクエリに適用するSQL関数を作成することを考えています。
しかし、これは失敗します
CREATE FUNCTION fn_Compare
(
@TextValue nvarchar(max),
@Culture varchar(10)
)
RETURNS nvarchar(max)
AS
BEGIN
RETURN @TextValue COLLATE @Culture
END
GO
これができるかどうか誰にもわかりますか?