Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datum in SQLite Tabelle speichern? (https://www.delphipraxis.net/138732-datum-sqlite-tabelle-speichern.html)

divBy0 16. Aug 2009 20:54

Re: Datum in SQLite Tabelle speichern?
 
Schau mal in die Doku, unter Datentypen.

hier!

Es gibt da ja nicht wirklich viele.

Zitat:

NULL. The value is a NULL value.

INTEGER. The value is a signed integer, stored in 1, 2, 3, 4, 6, or 8 bytes depending on the magnitude of the value.

REAL. The value is a floating point value, stored as an 8-byte IEEE floating point number.

TEXT. The value is a text string, stored using the database encoding (UTF-8, UTF-16BE or UTF-16-LE).

BLOB. The value is a blob of data, stored exactly as it was input.
Allerdings bin ich mich auch gerade noch am reinarbeiten. :-D

Satty67 16. Aug 2009 21:00

Re: Datum in SQLite Tabelle speichern?
 
Ja, die Speicherklasse ist Real (ist es ja bei Delphi auch mit Double), aber TimeStamp als Typ sollte doch gehen.

Bernhard Geyer 17. Aug 2009 07:32

Re: Datum in SQLite Tabelle speichern?
 
Was SQLite wirklich keinen nativen Datetime-Datentyp hab (und damit manche Operationen wie gruppierung nach Tag oder ähnliches mit SQL nicht möglich ist) wäre evt. das ISO-Datumsformat (yyyy-mm-dd) eine möglichkeit. Sortierugn kein Problem und auch Gruppierung nach Datumsbestandteile ist mit einfachen String-Opreationen im SQL möglich.

Satty67 17. Aug 2009 07:36

Re: Datum in SQLite Tabelle speichern?
 
Also hatte es gestern ja noch schnell getestet. TimeStamp ist ein gültiger Typ für ein SQLite-3 Feld. Es wird auch wie ein Datum behandelt, d.h. datensensitive Controls geben das als Datum aus. Das es intern als Float behandelt wird, ist dabei kein Problem, wahrscheinlich sogar normal ;)

Wie weit Funktionen existieren, um das Datum intern zu filtern, hab' ich aber nicht getestet. Einfache Sortierung (aufsteigend/absteigend) sollte aber kein Thema sein.

divBy0 19. Aug 2009 10:08

Re: Datum in SQLite Tabelle speichern?
 
Zitat:

Zitat von Satty67
Also hatte es gestern ja noch schnell getestet. TimeStamp ist ein gültiger Typ für ein SQLite-3 Feld. Es wird auch wie ein Datum behandelt, d.h. datensensitive Controls geben das als Datum aus. Das es intern als Float behandelt wird, ist dabei kein Problem, wahrscheinlich sogar normal ;)

Wie weit Funktionen existieren, um das Datum intern zu filtern, hab' ich aber nicht getestet. Einfache Sortierung (aufsteigend/absteigend) sollte aber kein Thema sein.

Wie hast du denn das Feld angelegt?

So?
Code:
CREATE TABLE test (Datum TIMESTAMP)

Und wie fügst du dann das Datum ein?

So?
Delphi-Quellcode:
Query.SelectSQL := 'INSERT INTO test (Datum) VALUES (:_Datum)';
Query.Params.ParamByName('_Datum').AsDate := now;
...

Assertor 19. Aug 2009 10:10

Re: Datum in SQLite Tabelle speichern?
 
Hi,

Zitat:

Zitat von divBy0
Wie speichert man denn am besten ein TDate in SQLite?

In DISQLite3 speicherst Du ein Datum am besten über Bind_Variant_By_...

Gruß Assertor


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:53 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz