Hello @Ekambaram ,
Thanks for the question and using MS Q&A platform.
It sounds like you are running into Floating-point errors. This is something inherent to the way computer store fractional values. It happens when the output of a calculation cannot be expressed or stored precisely. Wikipedia entry for more info -- see the section "Accuracy problems". So, here's what I think is happening:
Excel stores (at rest) data as text, like SQL char, and unlike SQL int. However, the excel tells anything reading the file what data type it is intended as -- in this case a float or double or decimal or the like. So when it came time to read, Data Factory converted the number-as-text to interim type float or double. At this point, the value didn't have an exact representation, so it did the best it could. Then, it got rounded and converted back to text when put on SQL.
To avoid this we need to tell Data Factory that column is text, not float. I think we can do this by editing the Excel Dataset's Schema. Change that column to String data type.
Also see:
https://en.wikipedia.org/wiki/Floating-point_error_mitigation
Please do let me if you have any queries.
Thanks
Martin
- Please don't forget to click on or upvote button whenever the information provided helps you. Original posters help the community find answers faster by identifying the correct answer. Here is how
- Want a reminder to come back and check responses? Here is how to subscribe to a notification
- If you are interested in joining the VM program and help shape the future of Q&A: Here is how you can be part of Q&A Volunteer Moderators