In TOracleQuery.Parse (3.3.1), the following code is executed when connected to Oracle 7:
oparse(CDA, PChar(ParsedSQL), -1, 1, 2);
// Parsed successfully, set functiontype
FFunctionType := CDA.ft;
Unfortunately, as the the second last parameter to oparse is requesting a deferred parse, FFunctionType is invalid, so calling TOracleQuery.Describe doesn't allow you to determine the type of statement under ORacle 7!
oparse(CDA, PChar(ParsedSQL), -1, 1, 2);
// Parsed successfully, set functiontype
FFunctionType := CDA.ft;
Unfortunately, as the the second last parameter to oparse is requesting a deferred parse, FFunctionType is invalid, so calling TOracleQuery.Describe doesn't allow you to determine the type of statement under ORacle 7!