Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Einfache Datenbank mit libSQL (https://www.delphipraxis.net/106180-einfache-datenbank-mit-libsql.html)

holle 6. Jan 2008 21:51

Datenbank: SQLite • Version: 3 • Zugriff über: libSQL

Einfache Datenbank mit libSQL
 
Ich habe mir die Datenbankkomponenten libSQL runtergeladen um damit auf eine SQLite Datenbank zuzugreifen. Leider bekomme ich es einfach nicht auf die Reihe, einen SQL-Befehl an die Datenbank zu senden. Kann mir jemand ein kleines Beispielprogramm geben, damit ich den Umgang mit Datenbanken, Delphi, libSQL und SQLite verstehe?
Ich habe wirklich schon die Suchfunktion gequält, Google bemüht und versuch mir das Beispielprogramm anzusehen. Es hat aber nicht gereicht. Ist libSQL so kompliziert? Sollte ich vielleicht eine andere Komponente benutzen?

Danke,
Marcel

holle 7. Jan 2008 16:20

Re: Einfache Datenbank mit libSQL
 
Wenn sich keiner mit libSQL auskennt nutze ich auch gerne andere Komponenten. Ich brauche nur ein kleines Beispiel als Einstig, an dem ich mich dann orientieren kann.

Danke, Marcel

haentschman 7. Jan 2008 16:30

Re: Einfache Datenbank mit libSQL
 
...Hallo

mit libSQl kann ich Dir leider auch nicht helfen... :(

...wenns um den Einstieg geht... Firebird Tutorial... habe den Link nicht parat... findest du aber über die Suche.
... in Zusammenhang mit Firebird habe ich mit den Zeos Komponenten gearbeitet.
... SQL Tutorial SQL-Syntax

:!: zum Thema welche Datenbank, gibt es hier genug Antworten und Vorschläge Datenbank für Anfänger
:hi:

OG Karotte 7. Jan 2008 17:24

Re: Einfache Datenbank mit libSQL
 
Mit libsql kenne ich mich leider auch nicht aus.
Ich greife über ZEOS auf SQLite zu. Funktioniert ausgezeichnet :thumb:

[Edit] UUPS, D7 PE übersehen :wall: [/Edit]

shmia 7. Jan 2008 17:31

Re: Einfache Datenbank mit libSQL
 
D7 Personal hat IMHO doch keine Unterstützung für TDataset und alle davon abgeleiteten Komponenten !!
Damit wird das Arbeiten mit Datenbanken zu einer ganz üblen Quälerei.
Wenn in deiner Komponenten Palette also "Datensteuerung" und "Datenzugriff" nicht vorhanden sind, kann man die Sache wirklich vergessen.

Alien426 7. Jan 2008 18:35

Re: Einfache Datenbank mit libSQL
 
Auch ich kenne libSQL nicht. Ich benutze den Simple SQLite Wrapper. Und man bekommt genau das. Vielleicht ist er für bestimmte Vorhaben weniger gut geeignet, aber für mich ist er im Moment genau richtig.

EDIT:
Dein Scheitern könnte unter Umständen mit dem neuen Release von SQLite zusammenhängen. Siehe Update vom August 2007 beim Wrapper. libSQL wurde ja zuletzt Mitte 2006 geupda..ändert.

holle 7. Jan 2008 19:37

Re: Einfache Datenbank mit libSQL
 
ups, mein fehler. habe damals nicht so recht auf meiner delphiversion geachtet. ich habe die delphi 7 enterprise version, die natürlich datenbanken unterstützt.

ich habe mich jetzt durch unendlich viele seiten geklickt und bekomme es einfach nicht auf die reihe mit delphi eine datenbank zu erstellen, auf die ich sql-befehle anwenden kann. entweder sind die tutorials zu lückenhaft oder zu unverständlich. jedenfalls kriege ich es einfach nicht hin.

zuletzt habe ich mich mit zeos und firebird embedded auseinandergesetzt. klingt ganz gut, aber laufen will es trotzdem nicht :/ kann mir keiner helfen?

marcel

OG Karotte 7. Jan 2008 20:07

Re: Einfache Datenbank mit libSQL
 
Also wie gesagt ich arbeite schon länger mit ZEOS und SQLite und alles ohne Probs.

Wo hast Du denn das Problem???

Verbindung mit SQLite???

Erstellen einer DB???

oder was :gruebel:

Kopiere die sqlite.dll z.B. in deinen Projektpfad (z.B. D:\Meine Projekte\Mein DBProjekt\)
Platziere die ZEOS-Connection Komponente auf eine Form.


Delphi-Quellcode:
procedure Tfrm_Main.Create;
var
  sql_tmp: TZQuery;
begin
    with MyCon do begin // ZEOS Connection
      Protocol := 'sqlite-3';
      Database := 'MyDB.db'; // evtl. mit Pfadangaben; DB wird erstellt, wenn nicht vorhanden
      Connect; // verbinden
    end;
   
    // Erstellen von Tabellen
    sql_tmp := TZQuery.Create(self);
    with sql_tmp do begin
      Connection := MyCon;
      // Tabelle 1
      SQL.Add('CREATE TABLE [tblirgendwas] (');
      SQL.Add('[ti_ID] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,');
      SQL.Add('[ti_Text] VARCHAR(255) NULL,');
      SQL.Add(');');
      // Tabelle 2
      SQL.Add('CREATE TABLE [tblwasanderes] (');
      SQL.Add('[tw_ID] INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,');
      SQL.Add('[tw_Title] VARCHAR(255) NULL,');
      SQL.Add('[tw_Description] TEXT NOT NULL,');
      SQL.Add('[tw_Category] INTEGER NULL,');
      SQL.Add('[tw_Keyword] VARCHAR(255) NULL');
      SQL.Add(');');
      // Ausführen
      ExecSQL;
    end;
    FreeAndNil(sql_tmp);
end;
Hoffe das hilft Dir ein wenig...

[edit=Phoenix]Tippfehler im Auftrag von OP korrigiert. Mfg, Phoenix[/edit]

Ghostwalker 8. Jan 2008 06:21

Re: Einfache Datenbank mit libSQL
 
Alternativ zu ZEOS gibts auch noch www.aducom.com/SQLite. Diese sind genau auf SQLite3 abgestimmt und funktionieren wunderbar :)

holle 8. Jan 2008 19:00

Re: Einfache Datenbank mit libSQL
 
@ Ghostwalker
du meintest bestimmt die hier: http://aducom.com/cen/download.php?view.1
ich schaue mir die komponenten mal an...


@ OG Karotte
danke, das ist doch schon mal ein anfang. habe ein zconnection und ein zquery hinzugefügt und den quelltext für meine bedürfnisse geändert.
Delphi-Quellcode:
procedure TfrmMain.FormCreate(Sender: TObject);
begin
  with ZConnection do begin
    Protocol := 'sqlite-3';
    Database := 'database.db';
    Connect;
  end;

  with ZQuery do begin
    SQL.Add('CREATE TABLE [tblTracks] (');
    SQL.Add('[ID] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,');
    SQL.Add('[Artist] VARCHAR(255) NULL,');
    SQL.Add('[Album] VARCHAR(255) NULL,');
    SQL.Add('[Track] INTEGER NULL,');
    SQL.Add('[Title] VARCHAR(255) NULL,');
    SQL.Add(');');
    ExecSQL;
  end;
end;
beim testen bekomme ich aber leider eine fehlermeldung:
Code:
quelldatei nicht gefunden: ZDbcSqLiteUtils.pas
ist die zeos-komponente nicht richtig installiert, oder woran liegt das?

marcel


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:48 Uhr.
Seite 1 von 3  1 23      

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