database muziek

emou

Gebruiker
Lid geworden
29 aug 2017
Berichten
28
Hallo,

ik heb met behulp van AI een bestand gemaakt in Access dat verbonden is met een bestand in verkenner waar ik liedjes opsla.
het pad in verkenner is "N:\mijn_muziek".

de bedoeling is dat de lijst in access correspondeert met mijn verkenner en als ik een nieuw liedje heb ik dat dan ook kan zien in mijn access bestand en met de knop die ik geïnstalleerd heb dat muziekje kan afspelen.

Maar het access bestand toont bijna dubbel zoveel liedjes dan in mijn verkenner

wat is er fout met mijn bestand, AI kan mij blijkbaar niet helpen
 

Bijlagen

Er wordt nergens gecontroleerd of een liedje dat in N:\mijn_muziek staat al aanwezig is in je database. Dus iedere keer dat je de import start worden alle aanwezig liedjes nog eens toegevoegd. Sommige staan er al 6 keer in, zoals bijvoorbeeld "Als De Dag Van Toen".
 
Laatst bewerkt:
Er wordt nergens gecontroleerd of een liedje dat in N:\mijn_muziek staat al aanwezig is in je database.
Zo te zien wordt er wel enig controle uitgevoerd, en wel op de bestandsnaam:
Code:
If DCount("*", "tblMuziek", "Bestandsnaam = '" & Replace(file.Name, "'", "''") & "'") = 0 Then
Hoewel ik het gegoochel met de enkele aanhalingstekens niet begrijp (en het daar mis op kan gaan) lijkt dit wel te werken.
Dat er desondanks dubbele bestandsnamen voorkomen is mogelijk een gevolg van een verwerking zonder die controle.
Bij de aangehaalde titel speelt (ook) iets anders. Die komt inderdaad 6 keer voor, maar dan wel in 4 verschillende bestandsnamen die 1 of 2 keer voorkomen. Gevolg van al dan niet een spatie voor de uitvoerende.
Als De Dag Van Toen_ Mama's Jasje .mp3 2
Als De Dag Van Toen_ Reinhard Mey .mp3 2
Als De Dag Van Toen_Mama's Jasje .mp3 1
Als De Dag Van Toen_Reinhard Mey .mp3 1


Bij dit als kan men zich afvragen waarom je zoiets in Access (of Excel) zou willen bouwen.
 
Laatst bewerkt:
Dat is wel mogelijk maar kost wel de nodige moeite.

Het gaat al mis bij de bron: de map met bestanden. Die bevat de nodige vervuiling: dezelfde titel/uitvoerende maar net even anders geschreven.

Wat je zou kunnen doen is de tabel leeg maken en opnieuw vullen zonder de bestaande controle op dubbelen (niet nodig als je met een lege tabel begint).
Met gerichte query's probeer je de vervuiling in de bron te achterhalen. Verwijder "foute" bestanden (bijvoorbeeld die met een spatie achter de uitvoerende). Dat proces (tabel legen en vullen, vervuiling opsporen en elimineren) herhaal je tot de bron schoon is.
 
Ik ben al de hele ochtend bezig met het 'opschonen' van je database. Dat is inderdaad een rotklus. Niet alleen zijn er diverse dubbele muziekrecords, er zijn ook tig verschillende spellingen van dezelfde artiestennaam. Dan krijg je dus een enorme puinhoop. En, zoals al gemeld: het helpt ook al niet dat je records twee keer hebt geïmporteerd met dezelfde gegevens. Die moeten dus allemaal opgeruimd en opgeschoond worden.
Sowieso raad ik een andere opzet aan, waarbij je aparte tabellen hebt voor (in ieder geval) de artiest (zodat je kunt controleren op unieke artiesten bij het invoeren) en nummers.

Ik zou zeggen: begin eerst met het opnieuw inlezen van de gegevens. Je hebt daar nu twee modules voor, zo te zien. Die zijn, zoals gemeld, al niet helemaal feilloos. Die wil ik wel even voor je opschonen zodat ze a) beter werken, en b) voorkomen dat je dubbele nummers importeert. Moet ik wel weten welke je gebruikt hebt.
 
Mijn Excel macrootje controleert of de titel al aanwezig is in het bestand, jouw Access applicatie kijkt of de filenaam al aanwezig is. En in die filenaam zitten veel meer variaties dan in de titel, vandaar de dubbelingen. Dus als je het advies van xps351 opvolgt (en dat kan zowel met je eigen accessapplicatie als mijn excelletje) dan kom je een heel eind.
 
Nog een aanvulling: het is natuurlijk veel handiger om gebruik te maken van de Tags die, als het goed is, in je bestanden zijn opgeslagen, zoals Titel, Album en Artiest. Op basis daarvan is het veel makkelijker om de data gescheiden in te lezen, op te slaan, en terug te vinden.

Daar zit natuurlijk één maar aan vast: je moet die informatie wél correct hebben opgeslagen. Dat laatste kun je overigens prima en simpel doen met een gratis (op een Windows pc; Mac gebruikers moeten er gek genoeg voor betalen) programma als MP3Tag. Zelf doe ik dat standaard met alle (digitale) muziek, want gekochte muziek heeft niet altijd de gegevens op de door jou gewenste manier opgeslagen. Dus voordat ik muziek inlees, zorg ik er eerst voor dat het gestandaardiseerd is.
 
Terug
Bovenaan Onderaan