Applies ToMicrosoft SQL Server Compact 3.5

概要

この資料では、この修正プログラムのリリースに関する次について説明します。

  • 修正プログラム パッケージで修正される問題

  • 修正プログラム パッケージをインストールするための前提条件

  • 修正プログラム パッケージをインストールした後にコンピューターを再起動する必要があるかどうか

  • 他の修正プログラム パッケージで修正プログラム パッケージを置換するかどうか

  • かどうか、レジストリの変更を行う必要があります。

  • 修正プログラム パッケージに含まれるファイル

現象

以下の事例で説明します。アプリケーションは、Microsoft SQL Server Compact 3.5 データベースにアクセスするのには Microsoft.NET Framework 3.5 Service Pack 1 に含まれる Microsoft ADO.NET Entity Framework を使用します。アプリケーションでは、文字列パラメーターまたはデータベースに対してバイナリ パラメーターを使用する"LINQ to Entities"クエリを実行します。このシナリオでは、アプリケーションを実行するときに、次のエラー メッセージが表示されます。

Ntext および image データ型は、どこで、HAVING、GROUP BY 句、またはなどでこれらのデータ型を使用する場合を除く、または NULL 述語では使用できません。

原因

アプリケーションでは、「LINQ to Entities」クエリのパラメーターを使用する場合は、基本データベースの種類を指定できません。 しますSQL Server コンパクトな Entity Framework プロバイダーは、元のパラメーター エンティティ データ モデル (EDM) ファセットに基づいて、プロバイダー レベルのパラメーターを作成しようとします。SQL Server Compact は、 nvarchar(max)データ型またはvarbinary(max)データ型です。したがって、プロバイダーは、 Edm.Stringのデータ型またはEdm.Binaryデータ型のパラメーターのデータ型を選択すると、EDM のファセットのパラメーターに基づいて、次のデータ型の 1 つとして、パラメーターをマークするのにはプロバイダーがあります。

  • 文字列パラメーターでは、プロバイダーは、 nvarchar(4000)データ型またはntextデータ型を選択します。

  • バイナリ パラメーターでは、プロバイダーは、 varbinary(4000)データ型またはimageデータ型を選択します。

プロバイダーは、 nvarchar(4000)データ型、またはvarbinary(4000)データ型として、パラメーターをマーク、8,000 バイトを超える値を挿入しようとするときにエラーが発生します。 さらに、プロバイダーは、 ntextデータ型、またはimageデータ型としてパラメーターを示す、エラーが発生パラメーターに対して、等値演算、グループ化、または並べ替え操作を実行している場合。

解決策

修正プログラムの情報

サポートされている修正プログラムは、マイクロソフトから入手可能です。ただし、この修正プログラムは、ここで説明する問題のみを修正することを目的としたものです。この修正プログラムは、この資料に記載された問題があったシステムのみに対して適用してください。この修正プログラムは、今後さらにテストを行う場合があります。したがって、この問題の影響が深刻でない場合は、この修正プログラムが含まれる次のソフトウェア更新プログラムがリリースされるまで待つことをお勧めします。修正プログラムをダウンロードできる場合は、このサポート技術情報の資料の上部に「修正プログラムのダウンロード」セクションがあります。このセクションが表示されていない場合は、マイクロソフト カスタマー サービス サポートにお問い合わせのうえ、修正プログラムを入手してください。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。