Question:
A question that came to me while I'm studying and I still haven't found anything about it. We know what software is , here is a brief definition :
A program (in English, software) is a sequence of specific instructions that describe a task to be performed by a computer, in the manipulation, redirection or modification of data, in a logical way.
This term is used both for source code, written in some programming language, and for the file that contains the executable form of this source code.
But it can relate to a database to generate information or not, in any case it doesn't lose its software definition.
But is there anything that makes the distinction when using a database?
Answer:
I may be wrong, but I don't think there is. The term is really generic. There are good and bad definitions out there. This one seems pretty reasonable.
In fact, I would need to define what a database is and then look for a distinction. What most people think of as a database is probably too specific a definition and applies only to a part of what might be considered a database. The definition found on Wikipedia itself is pretty bad because it tends towards a very specific form of database.
It's not really a term, but if you want to name it, call it "program to access/manipulate database". Who knows "database driven program"? Depending on the context (it doesn't seem to be the one used in the question) it can be "database manager program", or simply "database program" ( database software ).
I think the name will depend more on what it actually does and not because it accesses the database. It's difficult because, in general, accessing the database is even a secondary activity, it's a means to the end. And what is important to define the type of program is its purpose.
Although it can be very strange and almost unfeasible, some programs that are always expected to work with a database can work without them and achieve the same end.
I prefer to name it ERP, CMS, DNA Analyzer, or something like that, it's more meaningful than saying it accesses databases.
The so called " database manager" would be a program whose main activity is to manipulate a database – possibly to help other programs – so it is easier to give a name to it. I don't even know if that's a good name, but it's used a lot.
It is common, but not mandatory, for more than one program to be responsible for manipulating a database. Of course, more complex databases are more likely to do so.
Note the difference between program and solution/complete system.
Well, that seems to me to have little relevance. What I'm answering may seem preciosity, but just finding a term for this only fits for the most academic field.
Anyway it would be nice if someone knows something more specific, I doubt it.