leeren BLOB speichern

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
ProgOldie
Beiträge: 236
Registriert: 19.05.2012 17:09
Computerausstattung: Windows11, Arduinos, Pi3, PureBasic 6.02

leeren BLOB speichern

Beitrag von ProgOldie »

Wie bereitet man das Speichern eines leeren BLOBs vor?

Code: Alles auswählen

SetDatabaseBlob(DBNum, BlobNr, NULL, 0)
Ist das so richtig?
Windows10 / PB5.70 / Arduino (-Due) / Raspberry Pi3 /Linux Mint 18
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: leeren BLOB speichern

Beitrag von ccode_new »

Hi ProgOldie,

ich frage mich gerade ob das:

Code: Alles auswählen

SetDatabaseBlob(DBNum, BlobNr, NULL, 0)
Sinn ergibt.

Eigentlich brauch man doch keinen leeren Datenbank-Blob vorbereiten.

Die Vorbereitung macht man doch mit der Definition.
(Z. Bsp. CREATE TABLE Werte (ID INTEGER, Format TEXT(10), Extra BLOB) )

Du speicherst doch bei diesem Befehl nur einen "Blob" mit Daten.

Damit werden ja die Daten in die Datenbank gespeichert.

Wenn das nicht gewollt ist muss du diesen Befehl einfach nicht aufrufen.

Ein Zeiger auf NULL (#NULL) macht hierbei irgendwie keinen Sinn, oder ?

Entweder man speichert an einer Adresse Daten, oder man lässt es sein.

Oder bin ich hierbei auch auf dem Holzweg ?
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8679
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 32 GB DDR4-3200
Ubuntu 22.04.3 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken
Kontaktdaten:

Re: leeren BLOB speichern

Beitrag von NicTheQuick »

@ccode_new:
Man kann ja auch leere Dateien erstellen. Warum also nicht auch leere Blobs in der Datenbank? Es ist ein Unterschied, ob ein Datenbankfeld null ist oder ob es nur keine Daten enthält.
Bild
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: leeren BLOB speichern

Beitrag von ccode_new »

Man kann ja auch leere Dateien erstellen.
Das macht aber keinen Sinn.

Die Datenbankverwaltung macht das selber viel besser, als wenn man an irgendeine Adresse nichts speichert.
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Benutzeravatar
ProgOldie
Beiträge: 236
Registriert: 19.05.2012 17:09
Computerausstattung: Windows11, Arduinos, Pi3, PureBasic 6.02

Re: leeren BLOB speichern

Beitrag von ProgOldie »

Ich kann ja eine Spalte PIC in der Datenbank haben, in der bei einigen Datensätzen ein Bild als BLOB gespeichert ist. Wenn ich in einem Datensatz das Bild entfernen will, muss ich den BLOB auf NULL setzen.
Fragt sich nur, wie man das macht
Windows10 / PB5.70 / Arduino (-Due) / Raspberry Pi3 /Linux Mint 18
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: leeren BLOB speichern

Beitrag von ccode_new »

Betreff: Daten aus Datenbank entfernen.

Dafür liefert das Datenbanksystem Befehle.

Befehl: DELETE
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Benutzeravatar
ProgOldie
Beiträge: 236
Registriert: 19.05.2012 17:09
Computerausstattung: Windows11, Arduinos, Pi3, PureBasic 6.02

Re: leeren BLOB speichern

Beitrag von ProgOldie »

Nein, ich will ja nicht einen ganzen Datensatz löschen, sondern in einem bestimmten Datensatz in der Spalte PIC einen leeren BLOB schreiben. Dazu muss ich eine Kombination aus SetDatabaseBLOB() und DatabaseUpdate() benutzen. Das Problem liegt für mich im ersten Schritt, bei SetDatabaseBLOB().
Zuletzt geändert von ProgOldie am 28.02.2018 20:20, insgesamt 1-mal geändert.
Windows10 / PB5.70 / Arduino (-Due) / Raspberry Pi3 /Linux Mint 18
Benutzeravatar
ProgOldie
Beiträge: 236
Registriert: 19.05.2012 17:09
Computerausstattung: Windows11, Arduinos, Pi3, PureBasic 6.02

Re: leeren BLOB speichern

Beitrag von ProgOldie »

ProgOldie hat geschrieben:Nein, ich will ja nicht einen ganzen Datensatz löschen, sondern in einem bestimmten Datensatz in der Spalte PIC einen leeren BLOB schreiben. Dazu muss ich eine Kombination aus SetDatabaseBLOB() und DatabaseUpdate() benutzen. Das Problem liegt für mich im ersten Schritt, bei SetDatabaseBLOB().
Windows10 / PB5.70 / Arduino (-Due) / Raspberry Pi3 /Linux Mint 18
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: leeren BLOB speichern

Beitrag von ccode_new »

Es geht besser. :wink:

SQL_Lernen
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Benutzeravatar
ProgOldie
Beiträge: 236
Registriert: 19.05.2012 17:09
Computerausstattung: Windows11, Arduinos, Pi3, PureBasic 6.02

Re: leeren BLOB speichern

Beitrag von ProgOldie »

Noch einmal: Ich will keine Zeile löschen, sondern in einem Feld einer Zeile einen leeren BLOB speichern
Windows10 / PB5.70 / Arduino (-Due) / Raspberry Pi3 /Linux Mint 18
Antworten