Comments (9)
I'll take a look and will implement this suggestion if there aren't any difficulties in doing so!
from odpi.
Thank you! I'm looking forward to it.
from odpi.
I just checked. This information is already available! For timestamps, the value is found in the "scale" attribute. For intervals, the first value is found in the "precision" attribute and the second value is found in the "scale" attribute. I'll update the documentation accordingly.
from odpi.
On the other hand, that behavior of OCI is confusing and looking at the other metadata, those fields are separated....so I'll likely separate them here, too!
from odpi.
I had checked scale
and precision
attributes values for timestamp, interval year to month and interval day to second.
scale
values are same withfsprec
values for timestamp.precision
values are same withlfprec
values for interval year to month.
These results are same with yours.
However, for interval day to second:
See: https://github.com/kubo/ruby-oci8/blob/ruby-oci8-2.2.4/test/test_metadata.rb#L2393-L2405
precision
andscale
values are same withlfprec
andfsprec
values respectively when the metadata are retrieved from select statements.precision
andscale
values are same withfsprec
andlfprec
values respectively when the metadata are retrieved from OCIDescribeAny().
ODPI-C currently exposes precision
and scale
values only from select statements. But if ODPI-C retrieves metadata from OCIDescribeAny() in future, precision
and scale
values are exchanged.
from odpi.
I added the dpiDataTypeInfo structure suggested in #23. In that structure I have a column called fsPrecision which is used for fractional seconds precision on timestamps and interval day to second values. From what I can tell the precision values are accurate but I'd appreciate it if you took a look and confirmed that for me! Thanks.
from odpi.
Sorry, what I wrote in #22 (comment) is the result of my tests just for interest.
lfprec
and fsprec
should be got by OCI_ATTR_LFPRECISION
and OCI_ATTR_FSPRECISION
respectively as documented in type attribute attributes. These are available for columns but not documented in column attributes. IMO, it is a documentation bug.
from odpi.
Thanks, Kubo. I am not using those particular attributes but the standard precision and scale attributes. I'll find out internally which attributes are the right ones to use and modify accordingly. But in the meantime the code appears to work just fine!
from odpi.
Okay, thanks!
It woks fine.
from odpi.
Related Issues (20)
- XMLTYPE as "real" XML HOT 3
- Ability to set OCI_ATTR_LOBPREFETCH_SIZE HOT 7
- "ORA-03106: fatal two-task communication protocol error" when CLOB is fetched as strings and then lob locators HOT 3
- core dumps generated in libclntsh when timeouts are configured HOT 10
- Any plan to support Apple's M1 plat? HOT 1
- Is there a reference example dequeue message with message ID dequeue option HOT 9
- When ODPI tries to translate a variable to a temporary LOB, and there is inadequate TEMP tablespace, ODPI segfaults when the cursor is closed HOT 6
- M1 Mac issue ( incompatible architecture) HOT 2
- How to use ODPI-C with Oracle Times Ten? HOT 9
- Column Alias Error HOT 7
- Add an option to convert numbers between double and decimal in the same way as node.js, python3, ruby, rust or so HOT 5
- Oracle Rust driver HOT 2
- Option to get json float as float. It is got as double now. HOT 8
- Bytes after nul in members of dpiXid are zeroed. HOT 2
- Is DPI_TPC_END_SUSPEND an undocumented flag in the OCI manual? HOT 3
- dpiEnqOptions_setVisibility and dpiLob_getType are listed not in round_trips.rst HOT 2
- Get column name for position HOT 2
- `dpiStmt_execute` with `DPI_MODE_EXEC_PARSE_ONLY` will create a table. HOT 4
- Retrieving CLOB from an OUT parameter of an Store Procedure HOT 1
- ERROR: DPI-1047: Cannot locate a 32-bit Oracle Client library HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from odpi.