views:

84

answers:

1

I have a database that has lots of data and is all "neat", normalized (within reason - using EAV), and I have stored procedures to access and modify the data.

I also have a WinForms application that users download to search and view this data (no inserts). To make things handy for use and updates, I've been using SQLite to store this data and it works really well.

I'm working on updating the entire process and I was wondering if I should use a denormalized view of the data to ship out to the users, ala the 1 table with all the properties as columns, or continue to use the same schema as the master database?

My initial thoughts are along the lines of :

Denormalized View: Benefits... Provides a simple method of querying the data (since I'm not doing a lot of joins, just a bunch of column searching.

Cons... I'd have to manage a second data access layer. Granted I don't think it will be difficult, but it is still a bit more work.

If a new property is added, I'd have to modify the schema again and accomodate for the changes. Wheras I can simply query the property bag and work form there.

Same Schema: Pros... Same layout as master database, so updates are minimal, and I can even use the same queries when building my Data Access Layer since SQLite doesn't support stored procedures.

Cons... There is a lot of small tables for lookup codes and the like, so I could start running into issues when building the queries and managing it in the DAL.

How should I proceed?

+4  A: 

If you develop your application to query views of the data rather than the underlying data itself, you will be able to keep the same database for both scenarios without concern or the need to alter your DAL.

Galwegian
HAZZAH!!! I knew I was missing a piece to the puzzle. Thank ye kindly!
Dillie-O