AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Nextgrid und sqlite

Offene Frage von "michback"
Ein Thema von Cylence · begonnen am 3. Jul 2008 · letzter Beitrag vom 23. Jul 2008
 
Benutzerbild von Cylence
Cylence

Registriert seit: 2. Sep 2004
Ort: Allgäu
246 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Nextgrid und sqlite

  Alt 4. Jul 2008, 09:50
ok

also ich glaub ich kapiers nich... bin ja noch Anfänger was Datenbanken angeht.
Ich hab auch mehrere Demos wie man das SQLite anspricht usw aber von denen werd ich nciht schlau... Das sagt mir alles nicht wie ich das Nextgrid beim start aus der db befülle und beim beenden andersrum... ich weiß nicht wie ich das machen soll. Und mir fällt auf... das Hinzufügen von leeren Spalten ist nicht das Problem, das geht auch mit dem Nextgrid in nullkommanix, aber das einlesen eben das is das problem und NUR das, selbst beim Schliessen waren bei 40 000 titeln nur einige sekunden nötig ist also ok. Würde das denn wenn ich es irgendwann mal hinbekomme, denn überhaupt schneller sein beim laden?

ok hab mal n test gemacht:

Delphi-Quellcode:
var
   i : Integer;
   slDBpath: string;
   sldb: TSQLiteDatabase;
   sltb: TSQLIteTable;
   sSQL: String;
   Notes: String;
begin
     slDBPath := PrgPfad + 'config\Playlist1.db';
     sldb := TSQLiteDatabase.Create(slDBPath);
     if sldb.TableExists('Playlist1') then begin
        sSQL := 'DROP TABLE Playlist1';
        sldb.execsql(sSQL);
     end;
     sSQL := 'CREATE TABLE Playlist1 ([ID] INTEGER PRIMARY KEY,[Nr] INTEGER NULL,';
     
          sSQL := sSQL + '[AV] FLOAT, [Nr] FLOAT, [Title] VARCHAR (255),[Path] VARCHAR (255),[Genre] VARCHAR (255),[Medium] VARCHAR (255)'+
                                                                                                                                    //[picture] BLOB COLLATE NOCASE,
           ' [Quality] VARCHAR (255),[Rate] VARCHAR (255),[Artist] VARCHAR (255),[Album] VARCHAR (255),[Duration] VARCHAR (255), '+
           '[Invalid] VARCHAR (255),[InfosLoaded] VARCHAR (255),[VideoPosition] VARCHAR (255),[Filedate] VARCHAR (255),[Title] VARCHAR (255),[Resolution] VARCHAR (255), '+
           '[LastUse] VARCHAR (255),[FileSize] VARCHAR (255),[VideoDelay] VARCHAR (255),[PlayCount] VARCHAR (255),[Memo] BLOB,);';
         sldb.execsql(sSQL);
         sldb.execsql('CREATE INDEX Playliste ON [Playlist1]([Name]);');
         //begin a transaction
         sldb.BeginTransaction;
         for i := 0 to JvPlaylist1.RowCount -1 do begin //,picture
             sSQL := 'INSERT INTO Playlist1(AV,Nr,Title,Path,Genre,Medium,Quality,Rate,Artist,Album,Duration,Invalid, '+
                     'InfosLoaded,VideoPosition,Filedate,Title,Resolution,LastUse,FileSize,VideoDelay,PlayCount,Memo) '+
                     'VALUES ('+JvPlaylist1.Cell[0,i].AsString +
                               JvPlaylist1.Cell[1,i].AsString +
                               JvPlaylist1.Cell[2,i].AsString +
                               JvPlaylist1.Cell[3,i].AsString +
                               JvPlaylist1.Cell[4,i].AsString +
                               JvPlaylist1.Cell[5,i].AsString +
                               JvPlaylist1.Cell[6,i].AsString +
                               JvPlaylist1.Cell[7,i].AsString +
                               JvPlaylist1.Cell[8,i].AsString +
                               JvPlaylist1.Cell[9,i].AsString +
                               JvPlaylist1.Cell[10,i].AsString +
                               //JvPlaylist1.Cell[11,i].AsString +
                               JvPlaylist1.Cell[12,i].AsString +
                               JvPlaylist1.Cell[13,i].AsString +
                               JvPlaylist1.Cell[14,i].AsString +
                               JvPlaylist1.Cell[15,i].AsString +
                               JvPlaylist1.Cell[16,i].AsString +
                               JvPlaylist1.Cell[17,i].AsString +
                               JvPlaylist1.Cell[18,i].AsString +
                               JvPlaylist1.Cell[19,i].AsString +
                               JvPlaylist1.Cell[20,i].AsString +
                               JvPlaylist1.Cell[21,i].AsString +'");';
             //do the insert
             sldb.ExecSQL(sSQL);
         end;
       sldb.Commit;
       sldb.Free;
seh ich das ungefähr richtig so? Die db datei wird erstellt das klappt aber is null bytes groß... und es kommt kein Fehler im Debugger? Was is da falsch?

Gruß

tom
Tom
Just DO it
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz