sql server - Is this an acceptable database design? -


The price of my spider is tingling, but I was thinking it for two hours and I need some more feedback from Howmeind.

I am making an application for a school.

I was wondering how to make changes in the years after each year.

  • For students, it is meant to handle students, teachers, courses, honors roles, grades - tasks.
  • Grade is saved for years.
  • Different grades are assigned to teachers as their homework teacher.
  • Grades are saved for the year.

    The fact of auditing is that I should be an easy way to record records by the previous year or the year before. See what course in which class teacher gave in the class.

    My problem is how to handle it

    I thought that they want to create a new clean database for each year because they come together. So at the end of this year, I would like to go to school and prepare a new database for them. According to FooSchool2012 and program, end users change those databases, which they want to use through a connection string.

    I am using an ORM, it is only a matter of changing the connection string because the databases are the same.

    But it talks about poor design and crappy engineering for me.

    Normally my stomach is fine, so you can know some options on how people have to settle it.

    No, I will not create a new table or database for each year before it breaks the normal form Apart from each table name, there will be a duplicate. It's a bad design and a maintenance headache is about to create a new database, load the schema, and then change all the URLs? If you change the schema after a few years, should you also replace all the previous versions so that people can ask historical data?

    No, not a good design.

    It is normal for carrying historical information into the reporting / data warehousing database. But the plan you are suggesting is reminiscent of the old, mainframe, VASAM flat file system. The way I used the relational database was used.

Comments