SQLite: Tabbele mit Feldern zur Laufzeit erstellen

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

SQLite: Tabbele mit Feldern zur Laufzeit erstellen

Beitrag von pluto »

Hallo,
Unter Delphi ging es so schön.Es gab ein Schönes Beispiel nach dem ich mich richten Konnte.
Aber hier unter Lazarus nix der gleichen.

Auf der seite:
http://www.sqlite.org/quickstart.html
gibt es zwar ein c beispiel aber das Hilft mir leider nicht viel weiter.
z.b. gibt es unter Lazarus kein Open Befehl mit Parametern nur einer ohne.
ich habe folgende Fragen:
1) ich möchte zur Laufzeit Tabellen Erzeugen
2) ich möchte zur Laufzeit den Tabellen, "sachen" zuweisen. z.b.
Tabelle 1
Vorname, Nachname,....

Tabelle 2
key1=wert,value,und soweiter
key2=.....

wie geht das ?

ich habe zwar sowas in Delphi gemacht, nur habe ich wenige lust das jetzt zu suchen, wobei ich davon überzeugt bin, das die Delphi Version sich stark von meiner Jetzigen Version unterscheiden wird.

In diesem Tutorial heißt es:
http://wiki.lazarus.freepascal.org/Laza ... utorial/de
es würde ein Beispiel geben unter:
fpc/fcl/db/sqlite CVS Verzeichnis
jedoch finde ich auf meine Platte kein solches Beispiel.

Ich wollte doch nur etwas mit Datenbanken rumspielen.
Ohne Server.
Das kann doch nicht so schwer sein oder doch ?
(dann kann ich mir ja gleich ein eigenes Ausdenken, wenn die vorhanden nicht gehen !).
Ich bin Irgendwie enteuscht von Lazarus !
MFG
Michael Springwald

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Beitrag von knight »

Die Pfad-Angabe im Wiki ist nicht mehr aktuell. Ich würde mal mit dem Stichwort 'sqlite' im FPC Verzeichnis suchen.
Falls du die SVN Version von Lazarus verwendest, wirf doch mal einen Blick auf den (neuen) Database Desktop Editor (setzt FPC 2.2 oder höher voraus).

knight

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

es gibt dort nur ein verzeichniss
/usr/lib/fpc/2.0.4/units/i386-linux/sqlite
und das enthält keine Projekt Dateien:
ibpsqlite3.a
libpsqlite.a
libpsqlitedb.a
Package.fpc
sqlite3.o
sqlite3.ppu
sqlitedb.o
sqlitedb.ppu
sqlite.o
sqlite.ppu


edit2:
ich habe schon auf meiner Platte nach einem SQLite beispiel gesucht, aber nix passendes gefunden.
MFG
Michael Springwald

ralli
Beiträge: 374
Registriert: Mi 13. Sep 2006, 15:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Hagen a.T.W.
Kontaktdaten:

Beitrag von ralli »

So erstellst Du eine Db und eine Tabelle zur Laufzeit:

Code: Alles auswählen

procedure TForm1.Button1Click(Sender: TObject);
 
var dbneu : TSqlite3DataSet;
 
begin
 
dbneu := TSqlite3Dataset.Create(nil);
 
with dbneu do
 
begin
 
FileName:= 'Neu.db';
 
TableName:='Neue_Tabelle';
 
if not FileExists(FileName) then
 
begin
 
with FieldDefs do
 
begin
 
Clear;
 
Add ('Code',ftAutoInc);
 
Add ('Integer',ftInteger,0,False);
 
Add ('String',ftString,0,False);
 
Add ('Bool',ftBoolean,0,False);
 
Add ('Float',ftFloat,0,False);
 
Add ('Word',ftWord,0,False);
 
Add ('DateTime',ftDateTime,0,False);
 
Add ('Date',ftDate,0,False);
 
Add ('Time',ftTime,0,False);
 
Add ('Currency', ftCurrency,0,False);
 
Add ('Memo',ftMemo,0,False);
 
end;
 
CreateTable;
 
end;
 
end;
 
end;


ralli

Antworten