Tag Info

New answers tagged


I have an EAV for tracking server / database configuration. It's great for getting data in. We can throw any data at it and the loader ensures the "E" and the "A" reflect the data given. Once we got over a few hundred million rows in the Values table, however, getting data out became increasingly problematic. (I think having 400-column PIVOT queries ...


EAV is not evil; like any other tool, it can be implemented poorly and abused. You can find articles trash talking cursors, dynamic SQL, triggers, even SQL Server itself. That doesn't make them bad things. EAV can be an appropriate solution. Whether it's the right answer in your specific case is probably more opinion-based than anything; I'm answering more ...


Well, wait until you see the ugly JOINs you will need. I'm a strong opponent of EAV. I have seen too many large EAV datasets groan under the inefficiencies. However, since you have a tiny dataset, you might not run into the problems that others encounter. Here's my blog on it, including one suggested alternative: http://mysql.rjweb.org/doc.php/eav

Top 50 recent answers are included