Was ich tun möchte, ist eine Disc oder ein Laufwerk (USB, Haupt-Festplatte, etc) für Dateien scannen und speichern Sie ihre Informationen in einer Datenbank. Dann würde ich die db zu einer bestimmten Datei suchen, um zu finden, wo es gespeichert wird. Alternativ kann ich suchen, wie alte Copys aus Archivierungsgründen sind, oder wenn ich etwas überstolpere und es nicht rearchivieren muss oder nach einem Betrogenen suchen muss, falls ich es absichtlich mehrere Male absichere und eine meiner Scheiben Kratzer oder Laufwerk beschädigt war .Gibt es eine bessere Möglichkeit, diese Datenbank zu speichern?
Hier ist, was ich
os + fs Flag denke (1 Byte?) st_mode (wenn auch nicht in Linux) 2 Bytes win32_attr (wenn auch nicht auf Windows) 4bytes (dies umfasst hiddent, dir vs Datei, gesperrt usw.) Dateigröße (64Bits) a/m/c Zeit, 64Bits. index/eindeutiger Schlüssel als fileID
Sollte ich den Namen als variable Länge in seiner eigenen Tabelle durch seine passende fileID nachgeschlagen haben? oder sollte ich einen Dateinamen 260 Länge in der Datenbank haben oder sollte ich einen Dateinamen variabler Länge in der DB haben?
Dann habe ich Blobs von XYZ Bits für meine Prüfsumme (md5, sha1, sha512, etc, je ein Blob) in einer Prüfsummen-/Hash-Tabelle benötigt, die von fileID nachgeschlagen wurde.
Ich dachte, meine Hash-Tabelle sollte Datei-ID (Int die gleiche Länge wie Index?), HashType (Int), HashValue (Varchar) haben.
Was ist PK und was ist Index? Warum brauche ich sie? Ich füge die Hashtabelle hinzu, die ich für meine Frage vorgesehen hatte, damit Sie besser erklären können, was damit nicht stimmt. –
PK === Primärschlüssel von fileId und hash_type, index ist ein weiterer Index für fileID. – sfossen
Sie würden durch die Datei-ID mit der Dateitabelle verknüpfen. – sfossen