GLBasic forum

Other languages => GLBasic - de => Topic started by: trucidare on 2007-Nov-05

Title: Datenbank gefälligst....
Post by: trucidare on 2007-Nov-05
Hier ein SQLite Test...
Wenn das jemand gebrauchen kann bitte melden ich machs dann weiter.

(http://trucidare.funpic.de/SQL.JPG)

http://trucidare.funpic.de/SQL.JPG
Title: Datenbank gefälligst....
Post by: WPShadow on 2007-Nov-05
Also von meiner Seite würde auf jeden Fall Interesse bestehen... =)
Title: Datenbank gefälligst....
Post by: Schranz0r on 2007-Nov-05
Kranker Hund ! :D
Title: Datenbank gefälligst....
Post by: trucidare on 2007-Nov-05
nee langeweile ;)
Title: Datenbank gefälligst....
Post by: Kitty Hello on 2007-Nov-05
coole Sache!
Title: Datenbank gefälligst....
Post by: WPShadow on 2007-Nov-06
Also mir gefällt die Idee! *ggg*
Title: Datenbank gefälligst....
Post by: trucidare on 2007-Nov-06
Damit ich das nachher in ne tolle DLL packen kann...
Magst du bitte noch diesen Fehler beheben?

Code (glbasic) Select
compiling:
C:/DOKUME~1/Tamm/LOKALE~1/Temp/glbasic/gpc_temp1.cpp: In function `int DllMain(HINSTANCE__*, long unsigned int, void*)':
C:/DOKUME~1/Tamm/LOKALE~1/Temp/glbasic/gpc_temp1.cpp:75: error: `__GLB_Defaults' was not declared in this scope
*** FATAL ERROR - Bitte die Compiler-Ausgabe ins Forum kopieren
Title: Datenbank gefälligst....
Post by: Kitty Hello on 2007-Nov-06
Hehehe.
DLL muss ich nochmal gucken. Da passt was nicht...
Title: Datenbank gefälligst....
Post by: trucidare on 2007-Nov-06
das wird nen richtig geiles projekt ^^
jedoch brauch ich dich noch bei der ausgabe gernot.

die ergebnisse der anfragen gibt sqlite an eine callback funktion weiter... jedoch weiß ich nich wie ich den kram am besten übergebe das man die daten auch verwenden kann. bei einer eindeutigen abfrage wie es in meinem sample ist, ist dieses kein problem jedoch mit mehr als einer ausgabe.

mfg
Title: Datenbank gefälligst....
Post by: Kitty Hello on 2007-Nov-06
Hmm. Speicher die Ausgaben der Callback doch in einem Feld. So mach' ich das bei Newton.
Title: Datenbank gefälligst....
Post by: trucidare on 2007-Nov-06
naja die callback funktion bekommt die ergebnise als char **argv. und da bin ich gerade ein wenig hilflos evtl kommt noch der geistesblitz.
Title: Datenbank gefälligst....
Post by: Kitty Hello on 2007-Nov-07
ist da ein "int argc" dabei?
Ein char** ist ein Pointer to char*. Also ein Feld von String-Pointern.

Dann so:
Code (glbasic) Select
GLOBAL stack$[]

INLINE
extern "C" callgirl(int argc, char** argv)
{
   for(int i=0; i   {
      DGStr str = CGStr(argv[i]);
      DIMPUSH(stack_Str, str);
   }
}
ENDINLINE
Title: Datenbank gefälligst....
Post by: trucidare on 2007-Nov-07
also meine Callback funktion bekommt 4 parameter:

erstens einen Pointer ( genau hab ich di ebezeichnung nich im kopf stell ich nachher mal hier rein )

dann int argc für die anzahl der spalten ! ( nicht zeilen )

dann char **argv für die werte

und char **coloumName für den namen der spalte.

Code (glbasic) Select
int callback(... *pointer, int argc, char **argv, char **coloumName)
{
    for(i=0;i    {
        PRINT(argv[i],0,0+(i*10));
    }
}
das ist die momentane Ausgabe für den Test.
das problem ist argc gibt nur die anzahl der spalten aus die zurückgegeben werden und nicht die zeilen. somit sieht das ganze bei einer abfrage bei:

Code (glbasic) Select
SELECT eintrag from Test where number=1so aus:

Code (glbasic) Select
1
Testeintrag
bei einer abfrage nach diesem Schema:

Code (glbasic) Select
SELECT eintrag from Testkommt raus:

Code (glbasic) Select
123 (alles aufeinandere geschrieben)
Testeintrag 23 (2,3 auch aufeinander)
Wie kann ich nun den kram den die callback funktion bekommt als wert übergeben um es im hauptprogramm zu nutzen?
Title: Datenbank gefälligst....
Post by: Kitty Hello on 2007-Nov-07
Wie ich's geschrieben hab. Mach ein Fedl, wo Du die Sachen unten dran hängst, und mach eine Funktion, die immer den obersten Eintrag zurückgibt und aus der Liste löscht.
Title: Datenbank gefälligst....
Post by: trucidare on 2007-Nov-07
OK werd ich morgen während der aarbeit mal machen. ich hoffe ich kann es so erstellen, dass man die datenbank in spielen nutzen kann. dann wäre das ein perfekter ersatz zu flatfiles etc pp.

wir müssen übrigens freitag weiter an den netzwerkkram weitermachen ich brauch das ganze bald.