OracleDecimal構造
OracleDecimal
構造は、データベース内のOracle NUMBER
または任意のOracleの数値を表します。
クラスの継承
System.Object
System.ValueType
Oracle.DataAccess.Types.OracleDecimal
宣言
// C# public struct OracleDecimal : IComparable, INullable, IXmlSerializable
要件
プロバイダ | ODP.NET管理対象外ドライバ | ODP.NET管理対象ドライバ | ODP.NET Core |
---|---|---|---|
アセンブリ |
|
|
|
ネームスペース |
|
|
|
.NET Framework |
4.8 |
4.8 |
- |
.NET (Core) |
- |
- |
システム要件を参照してください |
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
備考
.NETのDecimal
データ型では最大28までの精度しか保持できませんが、OracleDecimal
では最大38までの精度を格納できます。精度が28を超える値を持つOracleDecimal
からOracleDecimal.Value
プロパティにアクセスすると、例外がスローされます。OracleDecimal
の実際の値を取得するには、OracleDecimal.ToString()
メソッドを使用します。または、BinData
プロパティにより、OracleDecimal
値をバイト配列として内部Oracle NUMBER
書式で取得する方法があります。
例
// C# using System; using Oracle.DataAccess.Types; class OracleDecimalSample { static void Main(string[] args) { // Illustrates the range of OracleDecimal vs. .NET decimal OracleDecimal decimal1 = OracleDecimal.MinValue; OracleDecimal decimal2 = OracleDecimal.MaxValue; OracleDecimal decimal3 = new OracleDecimal(decimal.MinValue); OracleDecimal decimal4 = new OracleDecimal(decimal.MaxValue); // Print the ranges Console.WriteLine("OracleDecimal can range from\n{0}\nto\n{1}\n", decimal1, decimal2); Console.WriteLine(".NET decimal can range from\n{0}\nto\n{1}", decimal3, decimal4); } }