[FOSSGIS-Talk] GRASS mit PostgreSQL
Tom Gottfried
tom.gottfried at tum.de
Mi Dez 21 11:23:13 CET 2011
Hallo Markus,
Am 16.12.2011 17:03, schrieb Markus Neteler:
> Moin Moin,
>
>
> Um welche GRASS Version handelt es sich denn?
6.4.2RC2
>
>> Nein und ja. Der Fehler kommt sowohl mit PG als auch mit DBF als DB-Treiber.
>> Mit sqlite kann ich die Daten aber tatsächlich importieren (Obwohl später
>> auch Warnungen auftreten, dass "datetime" nicht unterstützt ist).
>
> Das sollte gglfs korrigiert werden.
>
> Im source code sehe ich:
>
> PG-Driver:
> case PG_TYPE_TIMESTAMP:
> *sqltype = DB_SQL_TYPE_TIMESTAMP;
> *size = 22; /* YYYY-MM-DD HH:MM:SS+TZ */
> break;
>
> DBF-Driver:
> case (SQLP_DATE): /* DATE treated as string unless
> SHAPELIB/DBFLIB supports date type */
> *type = DBF_CHAR;
> *width = 10; /* 2004-01-23 = 10 chars */
> *decimals = 0;
> break;
>
> SQLite-Driver:
> case DB_SQL_TYPE_TIMESTAMP:
> dt =&value->t;
> G_debug(3, "sqlite fetched timestamp: %s", text);
> ns = sscanf(text, "%4d-%2d-%2d %2d:%2d:%lf",
> &dt->year,&dt->month,&dt->day,
> &dt->hour,&dt->minute,&dt->seconds);
> if (ns != 6) {
> append_error("Cannot scan timestamp:");
> append_error(text);
> report_error();
> return DB_FAILED;
> }
> break;
>
Ich verstehe den Code nicht, sehe aber mehrmals "TIMESTAMP" und nicht "DATETIME". Ersteres ist ein
(Standard?) SQL-Datentyp, letzteres ist glaub ich eine Verirrung von MySQL und offenbar auch ein
Datentyp in OGR (siehe Ausgabe von ogrinfo in meiner ersten Mail bzw. im Ticket (s.u.)).
> Da eigentlich (aus meiner Sicht) alles da sein sollte, bitte ich um
> ein Ticket, wenn die GRASS Version>= 6.4 ist:
>
> http://trac.osgeo.org/grass/
http://trac.osgeo.org/grass/ticket/1517
Gruß,
Tom
>
>>
>>> Besser ist es SQLite als DB zu verwenden. Das unterstützt u.a. mehr
>>> Datentypen und auch lange Attributnamen.
>
> Dem stimme ich zu. In GRASS 7 ist es der Standardtreiber.
>
> Schoene Gruesse
> Markus
--
Technische Universität München
Department für Pflanzenwissenschaften
Lehrstuhl für Grünlandlehre
Alte Akademie 12
85350 Freising / Germany
Phone: ++49 (0)8161 715324
Fax: ++49 (0)8161 713243
email: tom.gottfried at wzw.tum.de
http://www.wzw.tum.de/gruenland