6

I have been working on an Android Online Quiz Application with PHP & MySQL. I know what attributes I need however when designing the relationship it becomes complex and confusing when I analysed it. I do not know if this would be a good database design before I write in MySQL and implement it in my project. See my ERD Below:

enter image description here

As the design above, I am trying to design that will also work for creating charts with any android chart generation library. I am not sure about this design and I am thinking that I might struggle ending up to redone my database design. Any suggestions for this? Thanks in advance.

Muhammad Catubig
  • 311
  • 3
  • 15
  • 5
    I think you will get better answer for your question here : http://dba.stackexchange.com/ – Tᴀʀᴇǫ Mᴀʜᴍᴏᴏᴅ Jan 21 '16 at 06:08
  • 1
    I think this is a good scenario to use xml/json/blobs in the db – Neil McGuigan Jan 23 '16 at 00:23
  • @NeilMcGuigan Is it? Would it be easier for me to create charts with this design? – Muhammad Catubig Jan 23 '16 at 02:29
  • 3
    I'm voting to close this question as off-topic because it has been asked a [second time on the correct SE site](http://dba.stackexchange.com/q/126854/15427) see [Is cross-posting a question on multiple Stack Exchange sites permitted if the question is on-topic for each site?](http://meta.stackexchange.com/q/64068/201151) – bummi Mar 20 '16 at 06:39

1 Answers1

1

From my experience, this can be built in a better way with JSON documents of a NoSQL database like MongoDB, which allows you to do the following:

  • Schema less : MongoDB is document database in which one collection holds different different documents.
  • Structure of a single object is clear.
  • No complex joins.
  • Deep query-ability.
  • Tuning.
  • Ease of scale-out: MongoDB is easy to scale.

http://www.tutorialspoint.com/mongodb/index.htm

Try out mLab as it provide MongoDb-as-a-service and can be easily connected to a web app deployed using Heroku. https://mlab.com/