2014-10-02 22:01 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)

* contrib/sddsqlt3/core.c
    * set default number of decimal places in float SQLITE3 values
      to _SET_DECIMAL. If user needs different number of decimal places
      when he converts number to strings then he can set it explicitly.
      Harbour does not change values of float point number retrieved
      from SQLITE3 and always returns original data.
    * do not set default length of numeric values for to string conversions.
This commit is contained in:
Przemysław Czerpak
2014-10-02 22:01:07 +02:00
parent cfb66e2ab9
commit 092b8a5657
2 changed files with 12 additions and 3 deletions

View File

@@ -10,6 +10,15 @@
* Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment
*/
2014-10-02 22:01 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/sddsqlt3/core.c
* set default number of decimal places in float SQLITE3 values
to _SET_DECIMAL. If user needs different number of decimal places
when he converts number to strings then he can set it explicitly.
Harbour does not change values of float point number retrieved
from SQLITE3 and always returns original data.
* do not set default length of numeric values for to string conversions.
2014-10-02 16:20 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/sddsqlt3/core.c
* removed dummy break statements

View File

@@ -361,7 +361,7 @@ static HB_ERRCODE sqlite3Open( SQLBASEAREAP pArea )
iDataType = sqlite3DeclType( st, uiIndex );
iSize = sqlite3_column_bytes( st, uiIndex );
iDec = 0;
iDec = iDataType == HB_FT_LONG ? hb_setGetDecimals() : 0;
pFieldInfo.uiType = ( HB_USHORT ) iDataType;
pFieldInfo.uiLen = ( HB_USHORT ) iSize;
@@ -512,11 +512,11 @@ static HB_ERRCODE sqlite3GoTo( SQLBASEAREAP pArea, HB_ULONG ulRecNo )
case HB_FT_INTEGER:
#if HB_VMLONG_MAX > INT32_MAX && ! defined( HB_LONG_LONG_OFF )
pItem = hb_itemPutNIntLen( NULL, sqlite3_column_int64( st, ui ), pField->uiLen );
pItem = hb_itemPutNInt( NULL, sqlite3_column_int64( st, ui ) );
break;
#endif
case HB_FT_LONG:
pItem = hb_itemPutNDLen( NULL, sqlite3_column_double( st, ui ), pField->uiLen, pField->uiDec );
pItem = hb_itemPutNDDec( NULL, sqlite3_column_double( st, ui ), pField->uiDec );
break;
case HB_FT_BLOB: