Fixed test failure on Oracle: model_fields.tests.test_float_validates_object

Failing test introduced in fix for refs #22210.
Flake8 corrections
Fixed #20292: Pass datetime objects (not formatted dates) as params to Oracle

This seems worthwhile in its own right, but also works around an Oracle
bug (in versions 10 -- 11.1) where the use of Unicode would reset the
date/time formats, causing ORA-01843 errors.

Thanks Trac users CarstenF for the report, jtiai for the initial patch,
and everyone who contributed to the discussion on the ticket.
Skip test for saving microseconds on backends which do not support it.