Decimal's scale value must be between 0 and 28, inclusive.
Posted: Tue 14 Mar 2017 09:40
Hello, I have a question.
When I use pgsqlConnection and pgsqlCommand
like following
...
DbConnection conn = new PgSqlConnection(connStr);
DbCommand command= new PgSqlCommand(SPName, conn as PgSqlConnection);
....
and use DbDataReader
using (DbDataReader Odbcdr = command.ExecuteReader())
{
PARAM_VALUE = dr[valueColName] == DBNull.Value ? 0 : Convert.ToDouble(dr[valueColName]),
}
and read like upper code.
but I face a error like this.
Decimal's scale value must be between 0 and 28, inclusive.
at Devart.Data.PostgreSql.j.aq(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Data.PostgreSql.b.az(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Common.ap.k(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Data.PostgreSql.b.k(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Data.PostgreSql.j.k(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Data.PostgreSql.PgSqlDataReader.GetValue(Int32 i)
at Devart.Common.DbDataReaderBase.get_Item(String name)
at KH.SWP.Server.BigDataApp.BigDataService.CreateERDViewValueItem(DbDataReader dr, String erdIndexColName, String lslColName, String uslColName, String valueColName, Int32 index) in C:\code workplace\2.11.170118_Chart_Server_Lee\AllInOne\KH.SWP\KH.SWP.EES.Server\KH.SWP.Server.BigDataApp\BigDataService.svc.cs:line 1042
at KH.SWP.Server.BigDataApp.BigDataService.InitGPTwoModel_ERDTSUM(DbDataReader dr, ObservableCollection`1 BaseInfo) in C:\code workplace\2.11.170118_Chart_Server_Lee\AllInOne\KH.SWP\KH.SWP.EES.Server\KH.SWP.Server.BigDataApp\BigDataService.svc.cs:line 511
I know data is more than 28 size.
I can round, but When reading , It is faced error.
So I want to know How to read and round this data.
I try like following.
But it is same.
double dParmaValue = 0.0;
Double.TryParse(dr[valueColName].ToString(), out dParmaValue);
Please give me advice.
Thank you for your help.
When I use pgsqlConnection and pgsqlCommand
like following
...
DbConnection conn = new PgSqlConnection(connStr);
DbCommand command= new PgSqlCommand(SPName, conn as PgSqlConnection);
....
and use DbDataReader
using (DbDataReader Odbcdr = command.ExecuteReader())
{
PARAM_VALUE = dr[valueColName] == DBNull.Value ? 0 : Convert.ToDouble(dr[valueColName]),
}
and read like upper code.
but I face a error like this.
Decimal's scale value must be between 0 and 28, inclusive.
at Devart.Data.PostgreSql.j.aq(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Data.PostgreSql.b.az(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Common.ap.k(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Data.PostgreSql.b.k(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Data.PostgreSql.j.k(Byte[] A_0, Int32 A_1, Int32 A_2)
at Devart.Data.PostgreSql.PgSqlDataReader.GetValue(Int32 i)
at Devart.Common.DbDataReaderBase.get_Item(String name)
at KH.SWP.Server.BigDataApp.BigDataService.CreateERDViewValueItem(DbDataReader dr, String erdIndexColName, String lslColName, String uslColName, String valueColName, Int32 index) in C:\code workplace\2.11.170118_Chart_Server_Lee\AllInOne\KH.SWP\KH.SWP.EES.Server\KH.SWP.Server.BigDataApp\BigDataService.svc.cs:line 1042
at KH.SWP.Server.BigDataApp.BigDataService.InitGPTwoModel_ERDTSUM(DbDataReader dr, ObservableCollection`1 BaseInfo) in C:\code workplace\2.11.170118_Chart_Server_Lee\AllInOne\KH.SWP\KH.SWP.EES.Server\KH.SWP.Server.BigDataApp\BigDataService.svc.cs:line 511
I know data is more than 28 size.
I can round, but When reading , It is faced error.
So I want to know How to read and round this data.
I try like following.
But it is same.
double dParmaValue = 0.0;
Double.TryParse(dr[valueColName].ToString(), out dParmaValue);
Please give me advice.
Thank you for your help.