Lightroom-Beschreibung der Datenbank

09/11/2014 - 12:10 von Stefan Pfefferkorn | Report spam
Hallo,

ich hatte "nebenan" im großen blauen Forum [1] schon mal gefragt und
dort bis jetzt noch keine positive Antwort auf folgende Frage erhalten:

Gibt es im Netz eine vollstàndige Beschreibunng der LR-Datenbank.
Sprich: Welche Tabellen sind für was zustàndig, welche Felder in den
Tabellen sind vorhanden, welche Werte können (dürfen) die Felder
annehmen o.à.

Wenn es das noch nicht geben sollte, dann würde ich das mal als
"Winterprojekt" in Angriff nehmen, hat hier da evtl. jemand Interesse
dran.

Vielleicht findet sich ja der ein oder andere, der mit ein wenig Input
dazu beitragen kann.

Die Diskussion ist hiermit dazu eröffnet! :-)

LG
Stefan

gepostet in de.alt.rec.digitalfotografie und de.rec.fotografie

[1] http://www.dslr-forum.de/showthread.php?t02402

www.stefan-pfefferkorn.de/aktuelles
 

Lesen sie die antworten

#1 Peter Schneider
09/11/2014 - 12:52 | Warnen spam
Am 09.11.2014 12:10, schrieb Stefan Pfefferkorn:
Hallo,

ich hatte "nebenan" im großen blauen Forum [1] schon mal gefragt und
dort bis jetzt noch keine positive Antwort auf folgende Frage erhalten:

Gibt es im Netz eine vollstàndige Beschreibunng der LR-Datenbank.
Sprich: Welche Tabellen sind für was zustàndig, welche Felder in den
Tabellen sind vorhanden, welche Werte können (dürfen) die Felder
annehmen o.à.

Wenn es das noch nicht geben sollte, dann würde ich das mal als
"Winterprojekt" in Angriff nehmen, hat hier da evtl. jemand Interesse
dran.

Vielleicht findet sich ja der ein oder andere, der mit ein wenig Input
dazu beitragen kann.

Die Diskussion ist hiermit dazu eröffnet! :-)




Ich hatte vor ein paar Jahren da auch mal reingeschaut, und auch nach einer
Schemadokumentation gesucht, aber nix gefunden. Wenn man sich die DB-Struktur
so anschaut, kommt man zu dem Schluß, daß das durchaus historisch gewachsen
ist ;-) D.h. es ist nicht unbedingt schön, und es ist nicht unbedingt
selbsterklàrend.

Mit ein bißchen Knobelei kommt man aber schon darauf, wie manches
zusammenhàngt. Mir war das dann letztendlich zu mühsam, das weiter zu verfolgen.

Ich habe hier noch zwei Queries rumliegen, die ich damals zusammengebastelt
hatte, wo man ein paar Basics schon erkennen kann. Das war damals glaub ich LR
4.x (oder sogar noch 3.x?) Kann natürlich sein, daß sich die DB-Struktur
mittlerweile geàndert hat, und das nicht mehr funktioniert.


Aufgabe 1: Finde alle Bilder mit Tag "Katzen" aber nicht mit Tag "Zeus" => das
wàren dann nur Bilder mit meiner Katze Momo:


SELECT r.absolutePath
, d.pathFromRoot
, f.idx_filename
, i.stackParent_fileName
FROM Adobe_Images i
, AgLibraryFile f
, AgLibraryFolder d
, AgLibraryRootFolder r
WHERE i.rootFile = f.id_local
AND f.folder = d.id_local
AND d.rootFolder = r.id_local
AND EXISTS
(SELECT 1
FROM AgLibraryKeyword k
, AgLibraryKeywordImage ik
WHERE ik.tag = k.id_local
AND ik.image = i.id_local
AND k.name = 'Katzen')
AND NOT EXISTS
(SELECT 1
FROM AgLibraryKeyword k
, AgLibraryKeywordImage ik
WHERE ik.tag = k.id_local
AND ik.image = i.id_local
AND k.name = 'Zeus')


Aufgabe 2: Finde alle Urlaubsbilder aus 2004, aber nicht vom Winterurlaub, und
nicht aus den Dolomiten:

SELECT r.absolutePath
, d.pathFromRoot
, f.idx_filename
, i.stackParent_fileName
FROM Adobe_Images i
, AgLibraryFile f
, AgLibraryFolder d
, AgLibraryRootFolder r
WHERE i.rootFile = f.id_local
AND f.folder = d.id_local
AND d.rootFolder = r.id_local
AND EXISTS
(SELECT 1
FROM AgLibraryKeyword k
, AgLibraryKeywordImage ik
WHERE ik.tag = k.id_local
AND ik.image = i.id_local
AND k.name = 'Urlaub')
AND EXISTS
(SELECT 1
FROM AgLibraryKeyword k
, AgLibraryKeywordImage ik
WHERE ik.tag = k.id_local
AND ik.image = i.id_local
AND k.name = '2004')
AND NOT EXISTS
(SELECT 1
FROM AgLibraryKeyword k
, AgLibraryKeywordImage ik
WHERE ik.tag = k.id_local
AND ik.image = i.id_local
AND k.name IN ('Winter', 'Dolomiten'))



Gruß
Peter

Climb the mountain not to plant your flag, but to embrace the challenge,
enjoy the air and behold the view. Climb it so you can see the world,
not so the world can see you. -- David McCullough Jr.

Ähnliche fragen