-
Notifications
You must be signed in to change notification settings - Fork 359
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cx_Oracle 6.0.1 Seems to Retrieve Wrong Values for Large Numbers (> 10 digits) #70
Comments
I can replicate the issue on Windows....but not on Linux. Will look into it further and add a test case once the source of the issue has been determined. Thanks for reporting it! |
… 18 digits were not converted to Python correctly (#70).
The problem was due to sizeof(long) = 4 on Windows and a lack of a test case -- both have now been resolved! |
The correction for this issue was included in 6.0.2, which was just released. |
I'm using version 6.2.1 and looks like this problem still exists. Answer some questions: What is your version of cx_Oracle? 6.2.1 What is your version of the Oracle client (e.g. Instant Client)? How was it What is your OS and version? Windows 10 Pro Thank you. |
I just tried the code at the top of this issue and it still works correctly for me. If you can find a way to demonstrate the problem, please open a new issue with the code that causes the problem. Thanks! |
I am using cx_Oracle to query a table with a 10 digit and larger numbers used as keys. When pulled into Python they are being somehow corrupted. The original database column is defined as Number(16). In the test below 9 digit and some 10 digit numbers will be correctly queried. Numbers with 11 or more digits are not correctly queried. The 10 digit number 1234567890 is correctly queried, the larger number 2234567890 is not. I have checked in the database and the numbers are being correctly inserted.
For the time being I am converting the number to_char.
I've tried to make the example similar to a test case, although I'm not exactly sure what you need for that.
The results are:
AssertionError:
Answer the following questions:
What is your version of Python? Is it 32-bit or 64-bit? Python 3.6.1
What is your version of cx_Oracle? 6.0.1
What is your version of the Oracle client (e.g. Instant Client)? How was it
installed? Where is it installed? 11.2
What is your version of the Oracle Database? 11.2
What is your OS and version? Windows 7 Pro SP 1
I am running in IPython if that makes a difference.
What compiler version did you use? For example, with GCC, run
gcc --version
. UnknownWhat environment variables did you set? How exactly did you set them? Unknown
What exact command caused the problem (e.g. what command did you try to
install with)? Who were you logged in as? See example
What error(s) you are seeing? See description
The text was updated successfully, but these errors were encountered: