I am working on caching Oracle data for an existing app in SQL Server for performance reasons, and I have run into behavior that has me curious. For reference, I'm using C#'s deprecated System.Data.OracleClient.OracleDataReader and System.Data.SqlClient.SqlBulkCopy to copy the data from Oracle to SQL Server. I have implemented an appropriate workaround (NULLIF(...)), so this is just for future reference.
I noticed that the Oracle broker returns empty dates even though Oracle itself returns 01-JAN-00 in my queries. This caused a discrepancy in testing since the SQL Server broker does not nullify the date like the Oracle broker does. I do not see any broker settings that would cause it, but my experience with Oracle is limited to occasional queries here and there (my DB skillset is predominately SQL Server-based). Am I missing something, or is the broker just doing some sort of non-throwing cast (such as SQL Server's try_cast) that is failing silently?