MarketSquare / MarketSquare/Robotframework-Database-Library

oracledb thin client - support locale specific date and number conversion

Offen
#175 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

improvement
Vorherrschende Sprache
Python
Sterne
179
Forks
178
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Currently there is no native support for the python oracledb module, so this issue occurs when using "connect using custom params" mode (see #173 for connection example).
There is a problem if the test data used in Robot Framework has some regional format different from the Oracle DB.
For example, with decimal/float number and dates:
- The standard English Oracle format for a decimal number is point-based - e.g. `123.45`.
- But in some other languages/regions (e.g. in Germany) the comma-based format is used - `123,45`.

So before I save some local values to the database or compare them with the database values, there is some conversion to be done.
**Currently it has to performed manually**.
### Maybe there is a better way?

The thin mode of the oracledb client doesn't support Oracle Globalization variables (see the full comparison between thin and thick clients [here](https://python-oracledb.readthedocs.io/en/latest/user_guide/appendix_a.html#featuresummary)).
So they advice to use the python globalization support - and provide an [example](https://python-oracledb.readthedocs.io/en/latest/user_guide/globalization.html#thin-mode-locale-aware-number-and-date-conversions).

Also I'm not sure, but maybe this issue is relevant also for other databases?

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem custom-params-Verbindungsmodus und dem Verbindungsbeispiel in issue #173 und lies anschließend das verlinkte python-oracledb thin-mode-Globalisierungsbeispiel. Lege fest, wie locale-bewusste Datums- und Zahlenkonvertierung für Robot Framework-Testdaten funktionieren soll, und kläre, ob der Umfang auch Datenbanken außerhalb von Oracle einschließt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
databases
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.