Oracle Heterogenous Services
Oracle "thoughtfully" includes the HS to allow you to connect to external data sources. They have a Free "generic" one included with the server that uses ODBC (and oledb on windows) to connect to anything, and server specific Gateways. Guess which one works? Guess which costs 5 figures+? Guess which one does stupid and potentially deadly things?
ODBC has functions to do things like, say ask for a list of fields in a table, and what are the datatypes. Does the free HS do this? Of course not. It does a 'select * from table', For each table in a query, fetches a row and checks the datatype, then drops the recordset.. Sounds ok? Try that on a MySQL 4 db (they added the ability if 5, but other db's have the problem). The client does not have a way to cancel the rs. You have to fetch the result to the client, before you can drop it. All the "elegance of a 'select *' and none of the data. THEN it pieces together and SQL statement (poorly, plenty of WTF's there) and runs the query.
Had a customer who was puzzled why his select that returned 1 record took 45minutes to complete. The table had ~500,000 rows, and was across a wan. He was real happy.........
Want to see some WTF's? Turn on the tracing if you are cursed enough
to have it configured. Marvel at the haphazard case handling. Wonder
at the datatype mappings.
Member of OA (Oracle Anonymous)
The first step is realizing you have a problem........