So here’s the thing. I am a new coder and I am working on my first big
project from scratch. My project is using ASP.NET MVC, Google Maps API,
Entity Framework, with SQL Server. Obviously, JavaScript, jQuery, Bootstrap on the front end.
I got a very early prototype started on my local machine but I’m starting
to run into database design complications. I am already new to coding,
but somehow have managed to figure out MVC and get a Web API going.
However, I am even less experienced than that with databases and
database administration. I know how to add/remove database objects and
set up tables and all that jazz; that’s not a big deal. But I’m having
questions such as:
*What is the best way to associate user accounts in my system with their business’ information…
*I want my users to be able to add/remove products to their business’
inventory table… What is the best way to set up the database to store
each individual product?
*What is a good way to pair the information given to me via business owners with the data I pull from Google API?
*Should I store business inventory items that don’t need a description each as a separate object, or just include one long inventory list string?
*When do I have my application create an entire new database versus just add a new table in an existing database? For example, should user accounts and businesses be in two separate databases?
And more…
These questions are less coding questions and more database
setup/administration questions… Questions I’d love to ask someone who
has made a big modern commercial database before that handles accounts
and inventory and all that. Obviously, coding questions will come up too
but a lot of it is just database design.
So, my real question here is… How do most coders do this? I would
imagine a lot of coders are not DB experts… Should I buy a Database
Administration book and read it? Should I consult an expert? Since this
will be a data-driven application, database setup is important. Thanks!
PS: Please, don’t worry about me being overwhelmed. I mean, if this is
something that will seriously take 6 months of dedicated study, it may
be better left for me to call up someone else… But even though I just
started programming a few months back, I’m actually loving getting into
all of this and it is not intimidating at all. It’s just that a project of this magnitude requires me to fill many roles.