メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

現象

Microsoft SQL Server 2012 または SQL Server 2014 Master Data Services (MDS) で、MDS Web サービスを使って数値属性を作成することを前提としています。 小数点の右側の桁数を指定しようとすると、正しくない精度が計算されます。 たとえば、次のようにして16桁の精度の10進数属性を作成しようとすると、次のようになります。

MetadataAttribute newAttribute = new MetadataAttribute(); newAttribute.DataType = AttributeDataType.Number; newAttribute.DataTypeInformation = 16;

正しい小数点以下の桁数が16で、精度が22の列が作成されます。

原因

この問題が発生するのは、内部 MDS ストアドプロシージャが、属性を作成するときに、正しくない精度計算を使用しているためです。 有効桁数は38からスケールを差し引いた値であるため、精度は正しくありません。

SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムを確認します。

回避策

この問題を回避するには、お客様の状況に合った次の方法を使用します。

  • SQL Server 2014 の場合は、修正プログラムを適用します。

  • SQL Server 2012 の場合は、精度の減算スケール (@DataTypeInformation など) ではなく、38の定数値 (SQL Server 2012 で許可される値) を使用するようにストアドプロシージャを変更します。

状態

マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

ヘルプを表示

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

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

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

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×