New Database Model ZXDB

This is the place for general discussion and updates about the ZXDB Database. This forum is not specific to Spectrum Computing.

Moderator: druellan

User avatar
kolbeck
Manic Miner
Posts: 309
Joined: Mon Nov 13, 2017 9:04 pm

Re: New Database Model ZXDB

Post by kolbeck »

Einar Saukas wrote: Wed Jul 01, 2020 5:42 pm
kolbeck wrote: Wed Jul 01, 2020 4:41 pm Would it makes sense to add a md5 field to the files table? So it would be possible to cross check when new/old files arrives.
Good point. Now that I'm already collecting file sizes because of this, collecting md5 also shouldn't be a problem.

I will implement it ASAP!
Great - i Will start using it
https://api.zxinfo.dk/v3/ - ZXDB API for developers
zxinfo-file-browser - Cross platform app to manage your files
https://zxinfo.dk - another ZXDB frontend
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

A new ZXDB version is now available!

Many thanks to [mention]kolbeck[/mention], [mention]druellan[/mention] and [mention]pavero[/mention] for their contributions as usual... also a very special "thank you" to Steven Brown from TZXVault, that's now helping the ZXDB team to add countless rare tapes and solved M.I.A.s to ZXDB. I'm sure a lot of people will recognize his name, he has been preserving Spectrum software a lot longer than any of us, so it's a privilege to work together with him. We have just added 300 rare tapes to ZXDB that he provided, there's certainly a lot more to come :)

On a more technical note, ZXDB now contains MD5 data for ZXDB files, so it's easier to keep track of updated files. Another change is, tables "labelfiles", "magfiles", and "toolfiles" don't exist anymore. As I mentioned before, all their content went into a single table "files". Don't forget to check if you have already made this change to your website before updating ZXDB this time.

My apologies for all other new contributions that were not included in this release yet, but we have been very busy. They will be included next time!
User avatar
PeterJ
Site Admin
Posts: 6859
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: New Database Model ZXDB

Post by PeterJ »

Thanks [mention]Einar Saukas[/mention],

I will get the site updated tonight. Great news about the link with TZXVault
User avatar
Juan F. Ramirez
Bugaboo
Posts: 5102
Joined: Tue Nov 14, 2017 6:55 am
Location: Málaga, Spain

Re: New Database Model ZXDB

Post by Juan F. Ramirez »

The 'signing' of the TZX Vault is a very, very great news for Spectrum Computing.

Congrats!
Ralf
Rick Dangerous
Posts: 2279
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: New Database Model ZXDB

Post by Ralf »

Great to see joining the forces with Steve and TzxVault !

He and other guys did an incredible job of preserving missing software and uploading it to WOS when it was still ran by Martijn.
We all know what happened later but now it seems that the dark days are over and we are going to enjoy their great work again.
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

And another ZXDB update is already available!

This time we have lots of new Spectrum titles (thanks [mention]R-Tape[/mention]!), about 60 Sinclair QL titles (thanks [mention]4thRock[/mention]!), about 400 links to BBC Micro versions of Spectrum games (thanks [mention]Stu[/mention]!), over 100 links to Spectrum games at The Cutting Room Floor (thanks again [mention]Stu[/mention]!), about 100 music references (thanks [mention]Rorthron[/mention] and everyone else that contributed with information!)

Our archive is growing faster than ever :)
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

Another ZXDB update is available!

It contains lots of ZX81 titles (thanks [mention]kolbeck[/mention]!), new hires inlays (thanks [mention]pavero[/mention]!), newly indexed Load'n'Run covertapes (thanks [mention]wallyweek[/mention]!), about 1400 new links to Spectrum versions on other platforms (thanks [mention]Stu[/mention]!), and many other minor improvements.
User avatar
PeterJ
Site Admin
Posts: 6859
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: New Database Model ZXDB

Post by PeterJ »

Thanks everyone! I will update the site this evening at sometime between 18:00 and 21:00 BST. The main site will produce errors during the update.
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: New Database Model ZXDB

Post by R-Tape »

Just to add that it doesn't contain the new entries I've been working on. Anyone expecting anything - nearly done, wait till the next update!
User avatar
PeterJ
Site Admin
Posts: 6859
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: New Database Model ZXDB

Post by PeterJ »

Just wow!!!

34,699 rows in the entries table now!

Image

Image
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

Another ZXDB update is already available!

It mostly contains recently released titles. Thanks [mention]R-Tape[/mention]!
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

A very large ZXDB update is now available!

ZXDB is now merged with ZXSR!!! It means that, along with the full content of Martijn's original WoS and Jim Grimwood's SPOT/SPEX, now ZXDB also includes the full content of Chris Bourne's ZX Spectrum Reviews. The ZXDB description at the official site was updated to credit ZXSR properly. Many thanks to Chris for working with us on this integration! From now on, ZXSR will continue to get updated and all changes incorporated into ZXDB. Likewise, all ZXDB updates will be reflected back into ZXSR.

Besides ZXSR, this update also includes new titles (thanks [mention]R-Tape[/mention]!), new hires inlays (thanks [mention]pavero[/mention]!), newly indexed Load'n'Run covertapes (thanks [mention]wallyweek[/mention]!), new game credits (thanks [mention]druellan[/mention]!), and many other updates. Also thanks everyone else that's always contributing with additional information for the database!
User avatar
PeterJ
Site Admin
Posts: 6859
Joined: Thu Nov 09, 2017 7:19 pm
Location: Surrey, UK

Re: New Database Model ZXDB

Post by PeterJ »

Thanks [mention]Einar Saukas[/mention],

There will be a short delay to applying the update as I need to adjust php.ini for the significantly larger file size.
User avatar
Vampyre
Manic Miner
Posts: 834
Joined: Wed Nov 15, 2017 2:51 pm
Contact:

Re: New Database Model ZXDB

Post by Vampyre »

Fantastic news and can I also take this opportunity to thank Einar for all of his help and great ideas in tidying up ZXSR's data. He's been such an inspiration how dedicated he is to making ZXDB as good as it could possibly be that I couldn't not do the same with ZXSR.

Secondly, it's a huge relief off my mind that the data is now in the public domain in such a seasoned database. I've worried, as I've got older, that should the worst happen that all the work over the last 20 years would disappear. I'll still be adding reviews to it, currently in the process of adding ZX Computing, and there's still more to come - it's a long way from being complete!
ZX Spectrum Reviews REST API: http://zxspectrumreviews.co.uk/
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

Vampyre wrote: Tue Aug 11, 2020 8:29 pm Fantastic news and can I also take this opportunity to thank Einar for all of his help and great ideas in tidying up ZXSR's data. He's been such an inspiration how dedicated he is to making ZXDB as good as it could possibly be that I couldn't not do the same with ZXSR.

Secondly, it's a huge relief off my mind that the data is now in the public domain in such a seasoned database. I've worried, as I've got older, that should the worst happen that all the work over the last 20 years would disappear. I'll still be adding reviews to it, currently in the process of adding ZX Computing, and there's still more to come - it's a long way from being complete!
Thank you for all your years of effort on putting ZXSR together, you have been doing it much longer than us! :)

Also many thanks for your approval and hard work on this integration! This kind of collaboration and joint effort benefits everyone, it's nice to have the Spectrum community working together like this!
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

On a more technical note, column "magrefs.score" from ZXDB will be removed in the next update. The reason is, it makes no sense to duplicate overall review scores inside a ZXDB table, when the entire ZXSR content is now directly available inside ZXDB.

This should be a fairly simple change. Instead of this:

Code: Select all

SELECT r.id, r.score FROM magrefs r
Your website should use this:

Code: Select all

SELECT r.id, s.score FROM magrefs r LEFT JOIN zxsr_scores s ON r.id=s.magref_id AND s.is_overall=1
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

A new ZXDB update is available! This version contains:
  • New typed instructions from [mention]pavero[/mention], as usual. He's tireless, I cannot even remember last time a ZXDB update did not contain his contributions :)
  • More bugfixes and updates from [mention]druellan[/mention]. This time he finished validating and updating every single post from the Cover Artists thread, that contains almost 500 posts!
  • The integration between ZXDB and ZXSR is now complete. Many thanks again to [mention]Vampyre[/mention] for this incredible amount of new content!
On a more technical note, there's now a new table in ZXDB called "notes". It combines all kinds of text information about each entry: comments, known errors and hardware blurb from ZXDB, awards and info from ZXSR. Now we can have multiple comments for each game, also specific information like music references can be stored properly instead of mixed within other comments. Columns "comments", "spot_comments", "known_errors" and "hardware_blurbs" from ZXDB table "entries" are now empty and they will be removed in the next release. If your website or system is using ZXDB, the easiest way to apply this change is to upgrade ZXDB first (your system will continue to work although comments will be blank), then update your queries to use table "notes".

For each title, there could be (at most) 1 "known errors" note, (at most) 1 "hardware blurb" note, and multiple "comments" note in table "notes". Technically it means a query like this:

Code: Select all

select e.id, e.title, e.comments, e.hardware_blurb, e.known_errors from entries e where e.id = ?
corresponds now to a query like this:

Code: Select all

select e.id, e.title, 
GROUP_CONCAT(c.text ORDER BY c.text SEPARATOR '\n\n') as comments,
h.text as hardware_blurb, 
r.text as known_errors
from entries e 
left join notes c on e.id = c.entry_id and c.notetype_id = 'C'
left join notes h on e.id = h.entry_id and h.notetype_id = 'H'
left join notes r on e.id = r.entry_id and r.notetype_id = 'R'
where e.id = ?
Although it's much easier to simply obtain all rows from table "notes" corresponding to a certain title, and process them directly:

Code: Select all

select id, entry_id, notetype_id, section, text from notes where entry_id = ?
Current note types are Award, Comment, Known Errors, Hardware Blurb, and Music Reference. If anybody has further questions or need help updating their system, just let me know!
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

Another ZXDB update is available!

The main database improvement this time is support for magazine supplements. Technically table "issues" now contains a new column "supplement" that stores the magazine supplement name, and another column "parent_id" that references the parent magazine issue containing this supplement.

Of course this release also includes new hires scans provided by [mention]pavero[/mention] :)
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

As part of our ongoing work to improve ZXDB, we will make the following changes in the next ZXDB update:

  • Column "labels.comments" will be removed. To obtain all comments related to a certain person or company, please use table "notes" instead. The advantage is that we can now store different kinds of comments, for instance awards like this.

    Technically instead of this:

    Code: Select all

    select comments from labels where id = ?
    use this:

    Code: Select all

    select * from notes where label_id = ?

  • Column "magrefs.is_supplement" will also be removed. All supplement pages are now stored under a separate issue ID. The advantage is that we can now store proper details about each supplement, for instance like this.

    Technically instead of this:

    Code: Select all

    select * from magrefs r inner join issues i on r.issue_id = i.id where r.is_supplement = 1
    use this:

    Code: Select all

    select * from magrefs r inner join issues i on r.issue_id = i.id where i.supplement is not null

  • All columns "idiom_id" will be replaced with "language_id", referencing table "languages" instead of "idioms". This is actually a bugfix that was reported here (thanks [mention]Rorthron[/mention]!)

    Technically instead of this:

    Code: Select all

    select * from entries e left join idioms i where e.idiom_id = i.id
    use this:

    Code: Select all

    select * from entries e left join languages i where e.language_id = i.id

All these new tables and columns are already available in the current ZXDB version. Therefore if you are running a website based on ZXDB, you can already make these changes right now, there's no need to wait for the next ZXDB update.
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: New Database Model ZXDB

Post by R-Tape »

Einar Saukas wrote: Thu Sep 03, 2020 5:46 pm All these new tables and columns are already available in the current ZXDB version. Therefore if you are running a website based on ZXDB, you can already make these changes right now, there's no need to wait for the next ZXDB update.
Ah that's what those apparently superfluous columns were for. I thought you'd gone round the bend!
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

R-Tape wrote: Thu Sep 03, 2020 8:12 pmAh that's what those apparently superfluous columns were for. I thought you'd gone round the bend!
These explanations are not mutually exclusive!
User avatar
R-Tape
Site Admin
Posts: 6353
Joined: Thu Nov 09, 2017 11:46 am

Re: New Database Model ZXDB

Post by R-Tape »

[mention]Frankie[/mention] [mention]wallyweek[/mention] [mention]WhatHoSnorkers[/mention]. I just wanted to say that the last few updates have not included your recent MIA/uMIA. I'm still working on my part of the update, so I'll get it to Einar for the next one.
User avatar
WhatHoSnorkers
Manic Miner
Posts: 252
Joined: Tue Dec 10, 2019 3:22 pm

Re: New Database Model ZXDB

Post by WhatHoSnorkers »

No worries!
I have a little YouTube channel of nonsense
https://www.youtube.com/c/JamesOGradyWhatHoSnorkers
User avatar
kolbeck
Manic Miner
Posts: 309
Joined: Mon Nov 13, 2017 9:04 pm

Re: New Database Model ZXDB

Post by kolbeck »

Einar Saukas wrote: Fri Aug 21, 2020 1:46 am

Code: Select all

select e.id, e.title, e.comments, e.hardware_blurb, e.known_errors from entries e where e.id = ?
corresponds now to a query like this:

Code: Select all

select e.id, e.title, 
GROUP_CONCAT(c.text ORDER BY c.text SEPARATOR '\n\n') as comments,
h.text as hardware_blurb, 
r.text as known_errors
from entries e 
left join notes c on e.id = c.entry_id and c.notetype_id = 'C'
left join notes h on e.id = h.entry_id and h.notetype_id = 'H'
left join notes r on e.id = r.entry_id and r.notetype_id = 'R'
where e.id = ?
Shouldn't it be R, S, E instead of C, H, R? (Combined with notes.section for S for hardware blurp)

/Thomas
https://api.zxinfo.dk/v3/ - ZXDB API for developers
zxinfo-file-browser - Cross platform app to manage your files
https://zxinfo.dk - another ZXDB frontend
User avatar
Einar Saukas
Bugaboo
Posts: 3070
Joined: Wed Nov 15, 2017 2:48 pm

Re: New Database Model ZXDB

Post by Einar Saukas »

kolbeck wrote: Wed Sep 09, 2020 8:59 am Shouldn't it be R, S, E instead of C, H, R? (Combined with notes.section for S for hardware blurp)
Yes, you are right. Sorry!
Post Reply