Fragen zur DB

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

Ich hab grad nix zum testen da, deshalb frage ich so:
kann ich dann auch folgendes zum sortieren nutzen:

Code: Alles auswählen

ORDER BY id ASC, wert DESC
geht mir nur um die Syntax, wenn DESC falsch ist, danke für einen Hinweis, aber wie gesagt, interessieren tut mich die Syntax
Ich bin Ausländer - fast überall
Windows XP Pro SP2 - PB 4.00
Benutzeravatar
Kiffi
Beiträge: 10719
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

bluejoke hat geschrieben:kann ich dann auch folgendes zum sortieren nutzen:

Code: Alles auswählen

ORDER BY id ASC, wert DESC
yepp, das sollte funktionieren (schon mehrfach in anderen Codes gesehen).

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

Ich seh gerade, SQLite ist eigentlich eine C-Library.
Kann man das nicht zu einer PB-Lib konvertieren, so dass man keine DLL braucht?

EDIT: Ist ab jetzt in einem eigenen Thread, bitte hier nicht darauf antworten.
Zuletzt geändert von bluejoke am 22.02.2005 18:34, insgesamt 1-mal geändert.
Ich bin Ausländer - fast überall
Windows XP Pro SP2 - PB 4.00
sobi
Beiträge: 170
Registriert: 05.02.2005 23:41
Wohnort: passau
Kontaktdaten:

Beitrag von sobi »

Kiffi hat geschrieben:

Code: Alles auswählen

UPDATE v_setup SET Rubrik='" + GetGadgetText(2) + "' WHERE ID='1'
Soweit so gut, das ist alles klar, allerdings komme ich nicht weiter, wenn ich die Getgadet in einer Schleife ausgeben möchte:

Code: Alles auswählen

test.l=0
sSQL.s = "UPDATE v_setup SET Name='" + GetGadgetText(test.l) + "' WHERE ID='" + test.l + "'"
test.l+1
Wie verknüpfe ich das?

LG


Simon
Sorgen sind wie Blumen, wenn man sie nicht gießt, gehen sie ein.
Benutzeravatar
jear
Beiträge: 288
Registriert: 17.10.2004 01:59
Wohnort: Ammerland

Beitrag von jear »

Du musst dafür sorgen, dass die Enumeration für diese Gruppe von Gadgets lückenlos und in der von Dir gewünschten Reihenfolge angelegt wird.

Dann lege Start- und End-Index für die Schleife mit den Gadget-Konstanten fest.

Code: Alles auswählen

For idx = #erstesGadget To #letztesGadget

.... GetGadgetText(idx) ....

Next
Man ist nie zu alt zum lernen, auch wenn man dabei manchmal alt aussieht!
sobi
Beiträge: 170
Registriert: 05.02.2005 23:41
Wohnort: passau
Kontaktdaten:

Zeile löschen

Beitrag von sobi »

Es ist unglaublich, mir fallen immer noch fragen ein...

Wie kann ich einen Datensatz / eine Datenzeile löschen?


Liebe Grüße,


Simon
Sorgen sind wie Blumen, wenn man sie nicht gießt, gehen sie ein.
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

Als ich MySQL verwendet habe, hab ich immer

Code: Alles auswählen

DELETE from 'tabelle' where id='4'
oder so genommen
Ich bin Ausländer - fast überall
Windows XP Pro SP2 - PB 4.00
sobi
Beiträge: 170
Registriert: 05.02.2005 23:41
Wohnort: passau
Kontaktdaten:

datenbankproblem

Beitrag von sobi »

Hallo,

Wie ist das mit so einer Datenbank *irgendwie verstehe ich die im moment gar nicht* ... mein Problem: mit dem Script, frage ich die Daten der Datei 1 ab. - Dann ersetze ich die Datei 1 durch eine andere (Datei 2). Wenn ich die zweite abfragen möchte, funktioniert das nicht und ich verstehe nicht warum?

Code: Alles auswählen

IncludeFile"sqlite.pbi" 

If SQLite3_Init() 
  
  sqlite3_dbHandle = SQLite3_OpenDatabase("V_setup.db") 
  
  If sqlite3_dbHandle 
    If SQLite3_GetTable("SELECT * FROM V_setup", @myRows, @myCols, sqlite3_dbHandle)   
      
      sErgebnis.s = "Ergebnis:" + #CRLF$ + #CRLF$ 
      sErgebnis = sErgebnis + "Anzahl Zeilen:  "  + Str(myRows) + #CRLF$ 
      sErgebnis = sErgebnis + "Anzahl Spalten: "  + Str(myCols) + #CRLF$ + #CRLF$ 
        ; Feld-Namen 
        For Col.l  = 0 To myCols  - 1 
          sErgebnis = sErgebnis + "Spalte " + Str(Col+1) + ": " + DBData(0, Col) + #CRLF$ 
        Next 
        sErgebnis = sErgebnis + #CRLF$ 
        ; Zurückgegebene Zeilen 
        For Row.l  = 1 To myRows 
          For Col  = 0 To myCols  - 1 
            sErgebnis = sErgebnis + "Feld " + Str(Col+1) + ": "+ DBData(Row, Col) + #CRLF$ 
          Next 
        Next 
        MessageRequester("SQLite3", sErgebnis) 
    Else 
      MessageRequester("SQLite3", "Konnte Tabelleninformationen nicht abrufen") 
    EndIf 
    SQLite3_CloseDatabase(sqlite3_dbHandle) 
  Else 
    MessageRequester("SQLite3", "Konnte Datenbank nicht öffnen / erstellen") 
  EndIf 
Else 
  MessageRequester("SQLite3", "Konnte SQLite3.DLL nicht initialisieren") 
EndIf 
Vielleicht gibt es hier eine ganz einfache, logische Erklärung.

Liebe Grüße,

Simon
Sorgen sind wie Blumen, wenn man sie nicht gießt, gehen sie ein.
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

Hallo!

Ich find im Code ehrlich gesagt nichts, was auf eine zweite Datenbank schließen lässt.

Simon
Ich bin Ausländer - fast überall
Windows XP Pro SP2 - PB 4.00
sobi
Beiträge: 170
Registriert: 05.02.2005 23:41
Wohnort: passau
Kontaktdaten:

Beitrag von sobi »

bluejoke hat geschrieben:Hallo!

Ich find im Code ehrlich gesagt nichts, was auf eine zweite Datenbank schließen lässt.

Simon
Hi Simon,
ne, ich will keine zwei DB abfragen, sondern in Windows ersetze ich die erste DB durch eine ander DB und wenn ich dann das Script ausführe, bekomme ich eine Fehlermeldung, dass die DB nicht existiert! (obwohl ich gleiche namen verwende und nur den "inhalt" abfragen will)

ist es jetzt klarer, was ich meine?
Sorgen sind wie Blumen, wenn man sie nicht gießt, gehen sie ein.
Antworten