What type of a database should I use?

I am making an ARPG game and I would like to have a way to store information about:

  1. Enemies
  2. Map generation
  3. Items
  4. Skills

I read this guide by Jacob Pennock in which he explains how to use Scriptable objects to add predefined classes into your scene. And while I already know what stats I want enemies or items to have, this way of implementing data looks to me like its done beforehand.

What I want to do is to procedurally generate my maps, add enemies in it (with stats which depend on character level and not constant), pick from a range of predefined items and randomize stats. This is why I don’t think Scriptable objects is what I am looking for.

What method should I learn? Is there a way to use these scriptable objects in the way I described? Should I use a database like SQLite or something else?

I was building a game, and was a little bit confused, had almost the same issue. I did a little search, my first preference was scriptable objects, it was working fine for small data, when i increased the data size i was facing little issues regarding performance, and security. I also did a research about Firebase realtime database, the result was very efficient and also performance was good, the only issue was if you consider firebase you are restricting the user to be must connected to the internet, that’s i drop this option. Finally i choose SQLite it was really fast and easy. It really solved all my issues. so I would suggest to go for SQLite.
That was my experience i just shared my experience with you, hope this would help