This was a technique used in the 1970s, there was a limit of possible characters and giving meaningful names was not a priority, it was better to use codes. It had some meaning back then, but not much. In fact I think people imagined that they would have thousands of tables one day and that the restriction of the name size would continue, which was naive.
Whoever did this at that time could have changed the pattern at least in new things. For some reason they think that keeping the pattern pays more. I see no advantage.
Some people never had to do that, but they saw that someone was doing it and they thought it was interesting. That’s what I always say, people follow rules without knowing why. It was probably something like "a big company did it like this, it must be good practice, I’ll do it like this".
Large erps usually have many tables even, thousands. I don’t know if all of them are really necessary, but meeting ample needs horizontally and vertically requires it all.
I was a developer of a system like this and it was terrible. Worse, it was created in the 90s and already at the time had better techniques than this, but they did not use because someone who had power learned to do so and imposed this disgrace to what today are many thousands of developers dealing with this difficulty.
But to be fair, after a while you get used to the names :D And the biggest complication isn’t even in the name. The structure of these tables and their relationships are often appalling. Imagine a lot of people, each with their own bias, without understanding the whole and what already exists, creating different things in something monolithic with deadlines weighing more than quality.
There’s a lot, a lot that people do today because everyone has always done this, but they did this because 50 years ago they had to, today is no more. Comments for example.
Today the advantage is zero.
I find it hard to answer that question without being too subjective. The only advantage to my view is that you write less when the table names are abbreviated. One possibility is that they were created in an automated way, so the weird names. What I recommend to help you is to create views for queries and then use meaningful names. So you would only need to consult the views, which would make the queries much more readable.
– Giuliana Bezerra
Thanks for the tip @Giulianabezerra
– rubStackOverflow
Related: http://desciclopedia.org/wiki/Gambi_Design_Patterns#Nonsense_naming
– Victor Stafusa