Forum Discussion
Help explaining why you don't just enter whatever you want in a DB (This should not be necessary...)
Startzc if it's personal data including employee names etc, then data protection law applies. Personal identity data is to be used only when and how it is necessary - not just convenient but absolutely required - for the purpose of the business. There's also stuff about fairness which also has the force of law. The business also may have its own rules about how to manage personnel records, that are broken by putting the data in this database, where it doesn't really belong.
More generally, article https://en.wikipedia.org/wiki/Column_(database) is an elementary description of how and why a database field contains a particular type of data value, such as an address "zipcode". You might want to look up something that goes into more detail on the subject. Basically the point is that every person and every program would expect that data column to contain that type of data value and nothing else, and would expect to find that data in that column and not elsewhere, and if that isn't respected, your data has departed from being valid and consistent.
In actual practice, it may be tolerable for a certain data field to be used to store more than one kind of information, when software can be used to distinguish one thing from another. But when doing things properly, a data table should have two separate columns for different types of data. Or else, why have a database at all, and not just write things out anyhow?
Some of the greatest "database" disasters on a personal scale have been created by storing data in a spreadsheet calculation program like Microsoft Excel, and then not looking after it. You would find terrifying stories about that. One that happens over and over again is to carefully build a table of data rows in the spreadsheet, and then someone decides to sort the data in order which Excel does automatically... but some of the columns are included in the sorting and some are not, so that the column values in one row of the spreadsheet now don't belong together. This comes in two versions - when somebody notices that they have just irreversibly vandalised their own database... or, they don't notice it, until much later.
As another example, our contacts database had a field for telephone number, so we expected that to be a sequence of digits. But users put numbers in with place names, or they put in two telephone numbers for a contact "123122 or 125414", or they put an e-mail address in instead. When we tried to send telephone messages automatically from the database, the process was chaotic.
So we gave them another field to store an e-mail address properly, and then we found it was being used for web site addresses instead. Chaos again.