Page 1 of 2 12 LastLast
Results 1 to 15 of 23
  1. #1
    Join Date
    Jan 2009
    Posts
    11

    Red face Bad database design... What would you do?

    I'm having a problem with database design. Please give me some advise.

    We have a software development project and I'm the only developer for the project. I did database design and there are 24 tables.

    My manager, who is not a software developer but has some database knowledge from Microsoft Access, wants to split the database in 3 different database instances. She insists she needs to split since some of the tables might be going to be used by some other people (or system) in the future so that it would be easier if we split it from the beginning. This is the problem I am having right now.

    As you all know, if we split the database you cannot make relationship (like foreign keys and some constraints) between tables among different databases. You need to code the relationship functionality, instead. To me, it sounds nonsense. Relational database has that functionality, but because of her "preference", I have to code it by myself...

    I believe that although some of the tables might be going to be used by some other people in the future, it still should be in 1 database. And it's only "possibility", anyways. I have been trying to convince her to keep them in 1 database, but now she is getting annoyed by my suggestion. We kind of had a big argument yesterday and she told me I had to do it (split the database), anyways...

    I kind of think because I speak English as a second language, I cannot make her fully-understand why it is a bad idea to split the database.

    What do you guys think?

    My options are:

    1. I try to convince her again (Please give me some advice how I can convince her. I could lose my job if I fail.)
    2. Just quit the job (Because developing software with wrong design is a pain)
    3. Just do it as she wants (It's going to be a lot of stress but do it just to pay my rent and bills for a while. Eventually I will quit if I find another job.)
    Last edited by stoutontap; 01-13-09 at 14:16.

  2. #2
    Join Date
    Jan 2003
    Location
    Massachusetts
    Posts
    5,800
    What RDBMS is this being developed in? In most of them, you can define security on tables that will prevent unauthorized users from getting at data.

  3. #3
    Join Date
    Jan 2009
    Posts
    11
    Yes, that's what I told my manager, like we could set table-level permissions, but she said it's a lot of trouble although I don't think it's any trouble... We are using SQLServer 2000.

  4. #4
    Join Date
    Jan 2003
    Location
    Massachusetts
    Posts
    5,800
    Only as much trouble as having to set up three databases with users specific to each one.

    Oh, she is planning on using SA for all access, then?

  5. #5
    Join Date
    Jan 2009
    Posts
    11
    Agreed.

    She's planning Windows Integrated Authentification.

  6. #6
    Join Date
    Jan 2009
    Posts
    11
    As she created PowerUser, ReadWrite, and ReadOnly groups.

  7. #7
    Join Date
    Feb 2004
    Location
    One Flump in One Place
    Posts
    14,912
    Quote Originally Posted by stoutontap
    Yes, that's what I told my manager, like we could set table-level permissions, but she said it's a lot of trouble although I don't think it's any trouble... We are using SQLServer 2000.
    Yeah - I often find it is better to rig up my own version of stuff rather than use the in built, native system functionality. Tsk!

    Her experience is Access? Security is a b***h in Access, so that might colour her thinking. Also (and I am afraid this is true) there are a lot of people learned a lot of bad practices from dabbling about in Access.

    You are spot on.

    Would you like some scripts to set up the security on a test system to show how easy this is? (It's easier in 2k5, but not too much bother in 2k).
    Testimonial:
    pootle flump
    ur codings are working excelent.

  8. #8
    Join Date
    Jun 2003
    Location
    Ohio
    Posts
    12,592
    Mark Twain once said "Put all your eggs in one basket....and then watch that basket!"
    Same goes true for databases.
    Splitting the database is nonsense, even for MS Access. Access is often split to separate the data from the forms and reports, but related data should not be split between DBs.
    If it's not practically useful, then it's practically useless.

    blindman
    www.chess.com: "sqlblindman"
    www.LobsterShot.blogspot.com

  9. #9
    Join Date
    Jan 2009
    Posts
    11
    Would you like some scripts to set up the security on a test system to show how easy this is? (It's easier in 2k5, but not too much bother in 2k).
    That is a good idea. I should do it.

    Once she knows it is not a lot of trouble, maybe I have some chance to convince her...hopefully.

  10. #10
    Join Date
    Jan 2009
    Posts
    11
    Splitting the database is nonsense, even for MS Access. Access is often split to separate the data from the forms and reports, but related data should not be split between DBs.
    I totally agree. I wish you were in my team and help me convincing her... I am the only developer in the team and there is no one else who can help me... She thinks she is a software developer or database developer, but obviously she is not... Tough situation I am facing...

  11. #11
    Join Date
    Jun 2004
    Location
    Arizona, USA
    Posts
    1,848
    MS Access Security is an oxymoron.

    The only reason you would want to split the table in SQL Server is to partition the data for performance reasons. All modern database servers have good to excellent security mechanisms, which aren't hard to implement.
    Last edited by loquin; 01-14-09 at 13:33.
    Lou
    使大吃一惊
    "Lisa, in this house, we obey the laws of thermodynamics!" - Homer Simpson
    "I have my standards. They may be low, but I have them!" - Bette Middler
    "It's a book about a Spanish guy named Manual. You should read it." - Dilbert


  12. #12
    Join Date
    Jan 2009
    Posts
    11
    Yesterday I tried to convince her again. Before it goes to the core part, she got pretty emotional and told me, "I am your boss and now you split the database". I thought it's enough. She's being so stubborn for her wrong idea. I give up.

    Last night I was thinking about my situation and kind of decided to quit this job. But, not right now. The job market is quite dead and there are not so many interesting jobs. Plus, I'm a foreighner who speaks English as a second language. Not right time to quit with no plan. I will probably do whatever she wants until l find another job. I know it's a pain. Each time I program some codes, I would feel like, "Am I doing right thing? No!". But I need to pay my rent and bills.

    Thank you guys for giving me some comments. You guys encouraged me as I was not wrong. You let me know I'm working for a wrong person. If you have any job info, please let me know.
    Last edited by stoutontap; 01-14-09 at 13:48.

  13. #13
    Join Date
    Jun 2003
    Location
    Ohio
    Posts
    12,592
    Get the hell out of there.
    If it's not practically useful, then it's practically useless.

    blindman
    www.chess.com: "sqlblindman"
    www.LobsterShot.blogspot.com

  14. #14
    Join Date
    Jun 2003
    Location
    Ohio
    Posts
    12,592
    ...and the day you leave, send her an e-mail with a link to this thread.
    If it's not practically useful, then it's practically useless.

    blindman
    www.chess.com: "sqlblindman"
    www.LobsterShot.blogspot.com

  15. #15
    Join Date
    Jan 2009
    Posts
    11

    Wink

    Quote Originally Posted by blindman
    ...and the day you leave, send her an e-mail with a link to this thread.
    Thank you for a great idea. I will do that.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •