Can there be in whatever way to create a PDO object throw a mistake if your query takes too lengthy? I've attempted PDO::ATTR_TIMEOUT to no effect.

I would like a method to possess a query throw a mistake if it's running for over some time. This isn't something will be able to do within the database, ie, no maintenance jobs running around the db or anything.

I am unsure that which you mean by "This isn't something will be able to do within the database", but I recommend you have the individual giving the database setup an Oracle profile to limit this around the database side. You will find parameters for example CPU_PER_CALL and LOGICAL_READS_PER_CALL that may cap queries. The profile does apply simply to specific customers if preferred.

I am unsure if this can be done in Oracle but I am likely to say you cannot do that within PHP since PHP is giving the query to Oracle to become run after which delays for Oracle's response back. It might be easy to customize the PDO extension to aid this, but you should customize the extension code (the particular C code) because there most likely is not any method of doing this in only PHP.