Results 1 to 12 of 12
  1. #1
    Join Date
    Dec 2008
    Posts
    2

    Question Unanswered: How can I make this kind of database which I want?

    Hi,
    It's my first post. I am an electronic guy, I own a huge collection of books, magazine, articles and electronic component. They are now my collection in a span of 20 years. I want to digitize my record(only Front and Back of and Index) and wants to make a database. I will use Visual C or Basic as a front end. In that database I want to make many Fields,suppose the next day I went to market and bought few Microcontrollers, I will then want to update my database as new entry, suppose when I add 5 new piece of Microcontroller then this will update and add five more Microcontroller in the existing list, but this must also add 5 new piece in the category of total ICs, because microcontroller is also a IC and is also a Controller(According to the rule), so how to make this rule?, so when one field is related to other field, on updating one field it will also effect the other field.Some what like sets and subsets in maths. I don't know whether I am explaining it correctly or not in sense of database. Suppose I say BLACK as query, so my friends returns query as Car tires are black, Roads are black, ICs are black, my 2 books are black. etc from a database. If I say ROUND, then he says MOON is round,tires are round,eyes are round, earth is round.I want to add properties to each ITEM, like suppose if some one is admitted in a hospital, the nurse fills up the property of the individual. First name,father name, sex, blood group, height, weight, color of skin, color of eyes, Identification number, home address, City, Country,etc. So in this database, if in that hospital they want to know how many patients have O- blood group. They select blood group and all peoples name comes with that query.
    How to do this? Sorry for this kind of explanation, I also don't know whether I have put it in the correct thread.Literally I have never worked that much on database. I thanks to my friend who just taught me some Microsoft Access database and programming in VB and also did some communication with ODBC(don't know what it is) about 8-9 years ago. I made a software in Visual Basic that takes records and do other things. I did this just for fun at that time.I think he told me this is Relational database management. I'm sorry if I'm wrong. I have no background in database, I also don't know types of database and other things. I'm a newborn in this.He also taught me SQL, I remember there were some commands to take queries and all that.So I remember little bit what I did 9 years back.

  2. #2
    Join Date
    Jun 2003
    Location
    Ohio
    Posts
    12,592
    Provided Answers: 1
    I'd say if you are strong with VB, but inexperienced with databases, then MS Access might be your best development environment.
    If it's not practically useful, then it's practically useless.

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

  3. #3
    Join Date
    Dec 2008
    Posts
    2
    Will I be able to make this type of database with it? Is this possible in Microsoft Access and also does it respond with SQL statement?

  4. #4
    Join Date
    Jun 2003
    Location
    Ohio
    Posts
    12,592
    Provided Answers: 1
    Yes, but frankly I think you should do the entire application in Access. Use the database engine and the forms and reports, and enhance the forms and reports with VB modules.
    Access is a good choice for small databases for individual use. It is not appropriate for an Enterprise application with many simultaneous users.
    If it's not practically useful, then it's practically useless.

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

  5. #5
    Join Date
    Feb 2004
    Location
    New Zealand
    Posts
    1,422
    Provided Answers: 8
    I vote Msaccess 2

    VB is good but to build a form entry in VB is heaps harder than in MSaccess
    vb would take about 1 hour to build in MSaccess 30mins and most of that time is getting it looking good.
    the good thing about msaccess you can use your vb skills
    hope this help

    See clear as mud


    StePhan McKillen
    the aim is store once, not store multiple times
    Remember... Optimize 'til you die!
    Progaming environment:
    Access based on my own environment: DAO3.6/A97/A2000/A2003/A2007/A2010
    VB based on my own environment: vb6 sp5
    ASP based on my own environment: 5.6
    VB-NET based on my own environment started 2007
    SQL-2005 based on my own environment started 2008
    MYLE
    YOUR PASSWORD IS JUST LIKE YOUR TOOTHBRUSH DON'T SHARE IT.

  6. #6
    Join Date
    Nov 2004
    Posts
    1,427
    Provided Answers: 4

    Thumbs down

    I own a huge collection of books, magazine, articles and electronic component. They are now my collection in a span of 20 years....
    You do realise this in a very ambitious plan? It will take you a lot of time to get all that information in the database and to keep the DB updated from then on. The rewards however, can be huge afterwards, if you can keep it up-to-date. It will all depend on your determination.

    Having read your specifications, I would suggest using a category-subcategory approach with tags to store the properties (blood group, colour, ...). You could use a similar data model as you can find in the attached PDF.

    Object would contain both the physical things as well as immaterial categories. Location could tell you where you can find it. Tag would store 1 possible propertie of those Objects. ObjectTag would make it possible to attach multiple Tags to 1 Object and multiple Objects to 1 Tag. CatSubcat stores the relationship between a category-subcategory: like a 'LED' belongs to the parent category 'Diode'. It is also possible to define multiple parent categories for 1 Object, like for a 'LED' the extra parent category 'Light producing entity' (with Tag 'Lumen').

    You could define an Object with Name 'Diode' and tags 'siliciumdioxide', 'electronics', ...
    Then when you bought 5 LEDs type 'LED-27-45 Q' (just making something up), you create another Object with Name 'LED-27-45 Q', tags 'blue', ... and CatSubcat with cat = Id of 'Diode' and subcat = id of 'LED-27-45 Q'. That way you don't have to re-type all the tags of the parent category 'Diode'.

    When you want to find all objects that have a certain property (tag), like 'blue', you can find it quite easily:
    Code:
    SELECT object.name 
    FROM Object 
      inner join ObjectTag on 
        Object.id = ObjectTag.idObject 
      inner join Tag on 
        ObjectTag.idTag = Tag.id 
    WHERE tag.property = 'blue'
    On the other hand, if you want to find all Objects that with the property 'siliciumdioxide' or 'Lumen', you will have to use recursive SQL. I don't think MS Access is up to that (but I can be wrong). So you might have to use SQL Server after all.

    I have only written 5 recursive SQL's in my life. It's a bit rusty at the moment.

    Did this make any sense to you?
    With kind regards . . . . . SQL Server 2000/2005/2012
    Wim

    Grabel's Law: 2 is not equal to 3 -- not even for very large values of 2.
    Pat Phelan's Law: 2 very definitely CAN equal 3 -- in at least two programming languages

  7. #7
    Join Date
    Nov 2004
    Posts
    1,427
    Provided Answers: 4
    PDF attached now: Diagram_1.pdf
    With kind regards . . . . . SQL Server 2000/2005/2012
    Wim

    Grabel's Law: 2 is not equal to 3 -- not even for very large values of 2.
    Pat Phelan's Law: 2 very definitely CAN equal 3 -- in at least two programming languages

  8. #8
    Join Date
    Nov 2002
    Posts
    272
    Quote Originally Posted by myle
    I vote Msaccess 2
    I hope you mean "I vote Msaccess, too". I have worked with Access 2, and frankly, the newer versions are far more user friendly.

  9. #9
    Join Date
    Jun 2003
    Location
    Ohio
    Posts
    12,592
    Provided Answers: 1
    WIM is describing a model known as EAV (Entity/Attribute/Value), which I would strongly recommend you NOT implement.
    It has a notoriously bad reputation and a history of spectacular fiascos.
    A better option might be to parse and index text descriptions of the items in the database. I have a small helpdesk application I designed in Access that does just this. Every time the description for an entry is inserted or modified a VB script grabs the text, parses it into individual words, adds new words to a word list table, and then adds entrys to a table associating the words with the entry records.
    Very easy to query.
    If it's not practically useful, then it's practically useless.

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

  10. #10
    Join Date
    Nov 2004
    Posts
    1,427
    Provided Answers: 4
    WIM is describing a model known as EAV (Entity/Attribute/Value), which I would strongly recommend you NOT implement.
    It has a notoriously bad reputation and a history of spectacular fiascos.
    I fully agree with your EAV-evaluation (aka key-value model). Its a true CAST nightmare and resource drain.

    But I don't think my data model falls into that category (I hope). The purpose of an EAV is to have records with merely a PK and have a flexible data-driven system to add ad-hoc all kinds of columns of variable data types. That's not what I propose. I only allow tagging the Object with an undefined number of property-tags, like it is done in Delicious.

    How does your data model differ from mine? I think it's nearly the same, without the CatSubcat. By parsing the string into individual words and attaching it to the Object, you also avoid the need for recursive SQL. How do you handle the reuse of tags from parent categories? Or do you have to enter them all over again?

    Your solution will be a lot easier (no recursive SQL) and faster to query.
    Last edited by Wim; 12-09-08 at 18:34.
    With kind regards . . . . . SQL Server 2000/2005/2012
    Wim

    Grabel's Law: 2 is not equal to 3 -- not even for very large values of 2.
    Pat Phelan's Law: 2 very definitely CAN equal 3 -- in at least two programming languages

  11. #11
    Join Date
    Feb 2004
    Location
    New Zealand
    Posts
    1,422
    Provided Answers: 8
    Quote Originally Posted by ivon
    I hope you mean "I vote Msaccess, too". I have worked with Access 2, and frankly, the newer versions are far more user friendly.
    yes it it was access too
    hope this help

    See clear as mud


    StePhan McKillen
    the aim is store once, not store multiple times
    Remember... Optimize 'til you die!
    Progaming environment:
    Access based on my own environment: DAO3.6/A97/A2000/A2003/A2007/A2010
    VB based on my own environment: vb6 sp5
    ASP based on my own environment: 5.6
    VB-NET based on my own environment started 2007
    SQL-2005 based on my own environment started 2008
    MYLE
    YOUR PASSWORD IS JUST LIKE YOUR TOOTHBRUSH DON'T SHARE IT.

  12. #12
    Join Date
    Nov 2002
    Location
    Jersey
    Posts
    10,322
    based on my own environment...that's funny
    Brett
    8-)

    It's a Great Day for America everybody!

    dbforums Yak CorralRadio 'Rita
    dbForums Member List
    I'm Good Once as I ever was

    The physical order of data in a database has no meaning.

Posting Permissions

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