Pagina 1 van 1

Muziek Collectie

Geplaatst: za apr 15, 2017 11:41 am
door Hannes57
Een Goedemorgen Allemaal,

Mijn naam is Hannes en ik heb een behoorlijke muziek collectie. Ik heb, van het internet, een bestaande muziek collectie kunnen plukken en deze aangepast aan mijn wensen. Ik moet de formulieren nog maken, dat moet ik nog uit vogelen. Maar.... Klopt mijn tabellen en relaties een beetje?


Ik hoop dat er iemand kan naar kijken en mij , eventueel, de verbeter punten kan mee geven.

Hannes

Re: Muziek Collectie

Geplaatst: za apr 15, 2017 12:28 pm
door RPG
Hallo

Ik denk dat het goed is om regelmatig een kopie te maken van je database anders raak je de gegevens mogelijk kwijt. Je kunt ook de database bevrijden met FreeHSQLDB v.0.3 (View topic) • Apache OpenOffice Community Forum. Voordat je ook wat doet: zorg dat je een kopie hebt.

https://forum.openoffice.org/en/forum/d ... p?id=12188
Is een goede inleiding voor het omgaan met OOo-base.

Ik mis de basis kennis om tabellen te kunnen beoordelen. Ik doe het meer proefondervindelijk.

Romke

Re: Muziek Collectie

Geplaatst: za apr 15, 2017 8:15 pm
door eremmel
Je relatie model ziet en goed uit als basis. Ik weet niet hoe complex je het wilt maken.
Een paar punten om over na te denken:

- Soms is een song op meerdere albums uitgebracht.
- Soms heb je van een song meerdere uitvoeringen: studio, live en die uitvoering hoort dan bij een album.
- Soms heb je bij een song meerdere artiesten
- Soms wordt een song (jaren later) door een andere artiest ook weer uitgebracht (soms vertaald). Wil je dat onderscheid maken?
- Is een single (vaak) niet gerelateerd aan een album?
- Soms wordt een aantal albums samen verkocht in een 'verzamel box' wil je dat ook nog bijhouden?
- Is de platenmaatschappij nog een belangrijk attribuut voor een album voor jou?

Succes...

Re: Muziek Collectie

Geplaatst: zo apr 16, 2017 8:17 am
door Hannes57
Eremmel,

Dank voor de reactie. Dus eigenlijk voor mij onbegonnen werk. Ik denk dat ik het bij Calc houdt. Of een muziekcollectie splitsen in een Album en een Single database. Maar ik wil juist deze twee componenten bij elkaar voegen.

Allen dank.

Hannes

Re: Muziek Collectie

Geplaatst: zo apr 16, 2017 8:08 pm
door RPG
Hallo

Je heb op dit forum gevraagd naar een beoordeling van je tabellen structuur. Het is voor iedereen moeilijk om in te schatten op welk niveau de beoordeling gegeven moet worden. Iedereen gaat in eerste instantie uit van het eigen niveau, later kunnen we het pas iets aanpassen. Ik denk dat voor jouw geldt dat je gewoon door moet gaan op de huidige weg en alles langzaam uitbreiden: dat leid ik af uit jouw commentaar.

Database of Spreadsheet
Op een gegevens moment stond ik ook voor die keuze en heb weinig spijt van de keuze voor een database. OpenOffice kan goed samenwerken met een database. Ik weet de omgang met de gegevens in een database gemakkelijk dan in een werkblad. Het kostte mij wel moeite om het samenvoegen van tabellen tot een zelfstandige tabel goed vorm te geven in mijn gedachten. Ik kon er al mee werken om dat ik uitgebreid gespeeld hebt in de GUI voor queries maar het begrip maakt het nog gemakkelijker.

HSQLDB
De versie 1.8.10 is een mooie versie om goed te begrijpen voor beginners zoals ik. Die versie is standaard in OOo en kan veel meestal genoeg voor beginners. Naast dat het krachtig is kunnen de meeste beginners de handleiding nog wel begrijpen. Het lezen van die handleiding heeft mij veel geleerd.

Omgaan met gegevens
Door het lezen van de handleiding van HSQLDB en een boekje wat een inleiding was op de SQL taal heb ik voldoende kennis gekregen van SQL. Ik vind langzamerhand dat SQL een goede keuze is om met tabellen om te gaan.

Het maken van de stap
Neem de tijd om zo'n stap te maken en het kan ook nog over een jaar.

Romke

Re: Muziek Collectie

Geplaatst: zo apr 16, 2017 8:50 pm
door eremmel
Hannes57 schreef:Eremmel,

Dank voor de reactie. Dus eigenlijk voor mij onbegonnen werk. Ik denk dat ik het bij Calc houdt. Of een muziekcollectie splitsen in een Album en een Single database. Maar ik wil juist deze twee componenten bij elkaar voegen.

Allen dank.

Hannes
Hannes,
Ik wilde je niet teleurstellen. Zoals ik al zei de basis die je hebt gelegd is goed (bevat geen fouten). Het is echt aan jou om te bepalen hoe complex je het wilt. Romke's advies is goed. Vind je het leuk om met technische zaken te knutselen gewoon doorzetten; de uitbreidingen die ik je voor hield kun je later (als het nodig is) wel toevoegen.
Ook bij de implementatie fase kun je terugvallen op het forum.
Een paar tips:
Ben je het Engels redelijk machtig kijk eens rond op het Engelse forum, daar is een schat aan info over Base te vinden.
Base met de ingebouwde database is niet 100% betrouwbaar. Maak regelmatig een backup: gebruik 'Save as' (Bewaren als) met in de naam een volgnummer of datumtijd.
Je kunt van Calc een Base document maken. Als je twee Base documenten open hebt kun je de Calc data importeren in je Base document met database.
Wees niet teleurgesteld, maar het gaat je tijd kosten. Je gaat je begeven op een gebied van de IT waar je als professional een HBO+ opleiding voor nodig hebt.

Voor mijn eerste Base project (wel met macro's etc) heb ik eerst veel documentatie verzameld en gelezen. Toen de lastige dingen uitgeprobeerd in kleine projectjes en toen pas gedaan wat ik wilde, ik was toen 6 maanden verder, maar dat was veel complexer dan jou probleemstelling.

Begin met Album en Song, voeg dan Artiest en Genre toe en tenslotte Singel.

Re: Muziek Collectie

Geplaatst: zo apr 16, 2017 9:43 pm
door Hannes57
Eremmel,

Dank voor je advies. Ik wil hem juist simpel houden. Ik heb niet veel info nodig. Hoogstens wat ik belangrijk vind.
Ik zal het net eens af struinen.

Mijn start punt is deze:
http://www.thefrugalcomputerguy.com/index.php
En dan de video Tutorials. Soms is het amerikaans-engels wat lastig en zou willen dat zo iets in onze moerstaal was. Maar goed, even door bijten.

Hannes.

Re: Muziek Collectie

Geplaatst: zo apr 23, 2017 10:55 am
door RPG
Hallo

Ik heb je vraag op het Engelse forum gelezen en ik denk dat alles met een eenvoudig ja beantwoord kan worden. Naar mijn mening is voor jouw het belangrijkste om alle gegevens gewoon in te typen in een werkblad-document. Maak in dat werkblad-document verschillende tabellen. Elke tabel op een afzonderlijk werkblad.

De volgende stap is maak een database gebaseerd op dat spreadsheet. Geef dat een mooie naam zoiets als Verzameling. Leer nu simpel formulieren maken gebaseerd op die gegevens. Je kunt een formulier maken in het databasedocument maar je kunt ook formulieren maken als aparte tekst-documenten. Ik heb het idee dat aparte formulieren beter zijn. Aparte formulieren worden "Standalone formulieren" genoemd. Ik denk hierbij aan het combineren van dbase tabellen.

Het voordeel van deze manier is dat je langzaam doorgaat met wat je al hebt en leert omgaan met formulieren en een database. Wat je eenmaal hebt ingetypt hoef je nooit meer opnieuw in te typen. Het kan gemakkelijk gekopieerd worden in een andere database. Je krijgt op deze manier langzaam kennis hoe het een en ander werkt. Ik heb het altijd op deze manier aangepakt.

Romke

Re: Muziek Collectie

Geplaatst: zo apr 23, 2017 1:51 pm
door Hannes57
Hallo RPG,

Bedankt voor je antwoord. Ik vindt het prettig als ik alle gegevens op 1 blad heb staan, dus 1 formulier. Werkt het eenmaal, dan vindt ik het goed en laat het zo. Op het e\ngelstalige forum staat er een met 3 werkdocumenten en dat vindt ik lastig om iedere keer weer alles te voorschijn te toveren.

Ik had deze gevonden op het net en wil hem aanpassen.
[attachment=0]MusicMusicCollection(1).odb.tar.gz[/attachmen


Dus eigenlijk de Componisten vervangen door Singles. Ivb met een grootte vinyl collectie van singles en albums. Deze heeft een mooie tabel albums. Precies goed genoeg voor mij. Vandaar dus of ik dit aan kan passen.

Hannes

Re: Muziek Collectie

Geplaatst: zo apr 23, 2017 6:34 pm
door eremmel
Je kun h'm aanpassen zoals je wilt. Ik zou de tabel Composers verwijderen en een kopie maken van Album.

formulier zoals die er bij zit zul je ook moeten aanpassen. Dat formulier heeft als insteek (basis) een Song. Ik vraag me af of dat handig is...
Ik zou zelf eerder nijgen naar album/singel als basis. Maar goed: ga lekker experimenteren en leren zou ik zeggen.

Re: Muziek Collectie

Geplaatst: di apr 25, 2017 4:16 pm
door Hannes57
Bedankt voor je suggesties. Ik ga er mee aan de slag.

Hannes

Re: Muziek Collectie

Geplaatst: do apr 27, 2017 9:57 am
door Hannes57
Ik heb van alles geprobeerd, maar het lukt niet. Kan van mij sluiten. Ik hou mijn collectie bij in Calc, waar ik al mee begonnen was.

Hannes

Re: Muziek Collectie

Geplaatst: do apr 27, 2017 12:28 pm
door RPG
Hallo

Je beschrijft nergens wat je gedaan hebt. Je beschrijft nergens in kleine stapjes waar je problemen liggen. Zonder een beschrijving van je problemen in die kleine stapjes kunnen we je ook geen advies geven. In het algemeen is het buitengewoon veel proberen. Alle knoppen van de muis gebruiken en kijken wat mogelijk is. Goede informatie lezen helpt want daar staan de echte details. Ik weet uit eigen ervaring dat het niet gemakkelijk is om zo'n groot geheel als OpenOffice onder controle te krijgen. Ik merk het zelf weer, nu ik iets probeer te maken in Microsoft Excel. Het kost mij lange tijd om de goede knoppen te vinden. Daarnaast merk ik dat een oplossing die werkt in OpenOffice niet werkt in MicrosoftOffice en omgekeerd.

Vandaar ook mijn advies blijft je gegevens verzamelen in Calc en verken langzaam Base. Gebruik Base voorlopig alleen voor formulieren. In formulieren kun je de gegevens tonen. Je kunt wel herhaaldelijk proberen gehele tabellen te kopiëren van Calc naar een Database die HSQLDB gebruikt . Je kunt dan leren wat kan en niet kan.

Romke

Re: Muziek Collectie

Geplaatst: do apr 27, 2017 1:34 pm
door Hannes57
Bedankt voor je medeleven. Maar... Ik heb er schoon genoeg van. Had de Calc docu. netjes gekopieerd naar base, Wilde 3 tabellen maken en had weer een fout code. Misschien had ik iets vergeten, maar ik ben er een beetje klaar mee.

Misschien was het gisteravond de vermoeidheid, kleinkinderen op bezoek gehad de laatste 3 dagen. :D

Hannes

Re: Muziek Collectie

Geplaatst: do apr 27, 2017 8:59 pm
door Hannes57
Hallo,

Ik heb het aangepast en krijg een fout melding bij het verwijderen van rijen in de tabellen.
FOUT:
SQL-status: 23000
Foutcode: -8

Integrity constraint violation SYS_FK_66 table: Song in statement [DELETE FROM "Artist" WHERE "Artist Name ID" = ?]

Wat is er fout gegaan, na het aanpassen? Heb een zip bestand bijgevoegd. Ik weet het niet meer.... Hopeloos geval. :crazy:
Leve Calc..... Dat ik dat nog heb als back-up.... :knock:
Hannes

Re: Muziek Collectie

Geplaatst: do apr 27, 2017 9:57 pm
door eremmel
Tussen tabellen in een database kun je relaties leggen. Op die relaties kun je eigenschappen definiëren. Als je bv een delete actie probeert waarbij die eigenschap gebroken wordt dan krijg je netjes een melding "Integrity constraint violation". Je probeert een bv een Artiest record weg te gooien, maar er zijn nog Song records die naar dat artiest record verwijzen dus je mag h'm niet deleten.
 Edit: Nog even wat extra details:
In LibreOffice is de melding "Integrity constraint violation: foreign key: No action. Dit betekent dat er geen actie is gedefinieerd als je dus iets wilt verwijderen en de relatie bestaat nog. Dit kun je aanpassen door naar Tools -> Relationship te gaan, de relatie te selecteren en dan edit (rechter-muis-knop) te kiezen. Dan kun je op die relatie aangeven wat je wilt, bv bij Delete: 'Set Null'. Als je nu een Artist delete worden alle ArtistNameIDs in Song op NULL gezet.
AOO-Relations.png

'Delete cascade' betekend dat naast de artiest alle Songs ook worden weggegooid. Niet handig voor dit soort relaties. Maar wel weer handig in het geval van bv OrderHeader -> OrderLines. 

Re: Muziek Collectie

Geplaatst: do apr 27, 2017 10:06 pm
door RPG
Hallo

Voor zover ik die fout melding begrijp is het gewoon een waarschuwing tegen aan de gebruiker om deze handeling niet te verrichten. Als ik het een beetje bot mag zeggen het beschermd een domme gebruiker tegen zichzelf. Ik denk dat je de keuze heb uit twee handels wijzen:
a) Verwijder alle relaties die er nu zijn in de huidige database.
b) Begin gewoon helemaal opnieuw en definieer je eigen tabellen.

Een database zoals HSQLDB kan zo ingericht worden dat veel zaken automatisch goed verlopen. Dat goed verlopen kan echt heel veel zijn: bijvoorbeeld het automatisch verwijderd van onbelangrijke gegevens nadat je een plaat verkocht hebt. Het kan er ook voor zorgen dat bepaalde zaken ingevoerd moeten worden wanneer je een plaat koopt. Daar worden allerlei foutmelding voor gegeven. Sommige foutmelding worden onduidelijk als ze betrekking hebben op meer dan een enkele tabel. Ik heb het idee dat dat nu gebeurt.

Ik zeg niet dat het verstandig is om relaties te verwijderen maar het maakt soms wel wat duidelijk.

Het begrijpen van zulk soort zaken en er ook gebruik van maken kost enige tijd.

Romke

Re: Muziek Collectie

Geplaatst: do apr 27, 2017 10:16 pm
door Hannes57
iedereen bedankt voor de hulp. Ik heb in Relaties --- Bewerken-- optie: Trapsgewijs bijwerken - Trapsgewijs verwijderen toegepast. Het schijnt, tot nu toe, te werken. Ik kon de artiesten totaal verwijderen, om opnieuw , mijn eigen collectie, in dit bestand in te voeren.

Bij problemen zal ik mij weer melden. Tot nu toe, flink duimen, werkt het verwijderen van de oude inhoudt. :super:

Hannes.

Re: Muziek Collectie

Geplaatst: do apr 27, 2017 10:46 pm
door eremmel
Wel uitkijken met Trapsgewijs verwijderen, is een gevaarlijke. Je kunt als het goed is altijd in de juiste volgorde alles verwijderen. Dus eerst alle Songs en dan de bijbehorende relaties als Artiesten en Albums etc.

Wil je snel een overzicht van alle relaties kun je de derde query nemen:

Code: Selecteer alles

select * from INFORMATION_SCHEMA.TABLES;
select * from INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE; 
select * 
	from INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE CTU 
	LEFT JOIN INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS RC ON CTU.CONSTRAINT_NAME = RC.CONSTRAINT_NAME
	LEFT JOIN INFORMATION_SCHEMA.CHECK_CONSTRAINTS CC ON CTU.CONSTRAINT_NAME = CC.CONSTRAINT_NAME;
Dit is hoe de database het zelf opslaat en Base maakt het relatie diagram o.a. op basis van deze gegevens.

Re: Muziek Collectie

Geplaatst: vr apr 28, 2017 7:14 am
door Hannes57
Ik wil iedereen bedanken, maar ik krijg weer een andere fout code en ben er zat van. Ik stop hier mee.Ik wordt er echt moe van en ga hier geen tijd meer insteken.

In Calc werkt het prima en ga daar mee door. Misschien niet de juiste oplossing, maar ik hoef mij niet meer te ergeren aan foutcodes en dingen die niet werken. Ben al dagen bezig en stop er mee.
Heb geprobeerd de code(s) op te zoeken in Google, maar helaas, geen hits.
Dank voor de hulp.
Hannes.