SQLite Insert/ Update statement?

Hallo,

vielleicht gibt es hier jemand der mir etwas auf die Sprünge helfen kann.

Ich habe eine Anwendung (Capture One - Bildbearbeitungssoftware) die SQLite Datenbank nutzt. Da die Anwendung an etlichen Stellen Designfehler hat - aber das Ergebnis wofür ich sie nutze ich für mich sehr gut, lebe ich halt mit einigen Sachen die extrem nervig sind.

Also die Datenbank hat folgende Tabellen

.tables
ZCAPTUREPILOT                 
ZPATHLOCATION
ZCOLLECTION                   
ZPROCESSHISTORY
ZDOCUMENTCONTENT              
ZSELECTEDVARIANTS
ZDOCUMENTSETTING              
ZSIDECAR
ZENABLEDOUTPUTRECIPE          
ZVARIANT
ZENTITIES                     
ZVARIANTINCOLLECTION
ZIMAGE                        
ZVARIANTLAYER
ZIMAGEINCOLLECTION            
ZVARIANTMETADATA
ZIMAGEINCOLLECTIONPROPERTIES  
ZVERSIONINFO
ZKEYWORD

Mit folgendem Statement

select distinct ZPATHLOCATION.ZWINROOT || ZPATHLOCATION.ZRELATIVEPATH || "\" || ZIMAGE.ZIMAGEFILENAME as fullFileName
from ZPATHLOCATION
join ZIMAGE on ZPATHLOCATION.Z_PK = ZIMAGE.ZIMAGELOCATION
join ZIMAGEINCOLLECTION on ZIMAGE.Z_PK = ZIMAGEINCOLLECTION.ZIMAGE
join ZVARIANT on ZIMAGE.Z_PK = ZVARIANT.ZIMAGE
join ZVARIANTLAYER on ZVARIANT.Z_PK = ZVARIANTLAYER.ZVARIANT
join ZVARIANTMETADATA on ZVARIANTLAYER.Z_PK = ZVARIANTMETADATA.ZLAYER
where zcollection = '1665';

Bekomme ich eine Liste der Bilder die sich in der Collection mit der ID “1665” befinden und zwar in folgender Form.

C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64062.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64063.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64064.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64065.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64066.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64067.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64068.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64069.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64070.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64071.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2508\EOS R6 Mark II\2023\09\25\_rr64072.cr3
C:\DSLR\DSLR-RAW\ExtHDD 2503\EOS5DMKIII\2013\08\01\_z2a8135.cr2
C:\DSLR\DSLR-RAW\ExtHDD 2503\EOS5DMKIII\2013\08\01\_z2a8229.cr2
C:\DSLR\DSLR-RAW\ExtHDD 2503\EOS5DMKIII\2013\08\01\_z2a8267.cr2
C:\DSLR\DSLR-RAW\ExtHDD 2503\EOS5DMKIII\2013\08\01\_z2a8275.cr2
C:\DSLR\DSLR-RAW\ExtHDD 2503\EOS5DMKIII\2013\08\01\_z2a8320.cr2
C:\DSLR\DSLR-RAW\ExtHDD 2503\EOS5DMKIII\2013\08\01\_z2a8326.cr2

Mit kleinen Modifikationen kann ich alles was ich brauche aus der Datenbank auslesen und woanders verwenden.

Jetzt stehe ich aber plötzlich vor der Situation dass ich sehr gerne mit Hilfe von so einer Textdatei die so aussieht wie die obige Ausgabe die entsprechende Bilder zu einer Collection hinzufügen will.

Bei den Queries war es zwar Mühsam ohne Dokumentation o.ä die Beziehungen herauszufinden aber doch nach und nach habe ich es so zu sagen “dechiffriert”.
Bei dem Insert/ Update Statement den ich brauche stehe ich ehrlich gesagt komplett auf dem Schlauch und weiß gar nicht wie ich anfangen kann/ soll.

Für jeden Hilfreichen Tipp bin ich sehr Dankbar.

Du musst Dir darüber klar sein, dass Du damit ohne weiteres Deine Anwendung zerschießen kannst und wahrscheinlich gegen die Nutzungsbestimmungen verstößt.
Dass Du eine funktionierende Abfrage für Deine bisherigen Zwecke gefunden hast, ist leider kein hinreichender Ausgangspunkt für Dein jetziges Anliegen bzw. einen treffenden Rastschlag.

Die Abfrage zeigt, dass Spaltennamen verwendet werden, die z.B. die Primärschlüssel angeben. Zumindest klingt es so.
Wenn Du also mal als Beispiel für das Einfügen von Bildern einen neuen Pfad verwenden möchtest, musst Du ihn wohl als erstes in pathlocation einfügen und die für den nächsten Schritt die neue ID merken.
Das wäre mal ein Schritt. So wirst Du Dich wohl wieder durchhangeln müssen.

Moin,
ich habe mich etwas unklar ausgedrückt. Ich will keine neue Bilder in die Datenbank bringen. Das mache ich schon über die Anwendung.
Es geht dabei um Bilder die vorhanden sind zu einer weiterer Sammlung hinzuzufügen. Bei größeren Bestand ist so eine Aktion es mit der Anwendung machen zu wollen, ist schon fast unmöglich so lange dauert es.
Ich habe mir das ganze noch mal genauer angeschaut und am Ende war es doch relativ einfach.
Mit kleinen Powershell Script und 2 Abfragen vorab war die Sache gegessen.

Wieso war mein Beitrag denn gemeldet und erst Ausgeblendet - verstanden habe ich es nicht.

Dieses Thema wurde automatisch 60 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.