Results 1 to 3 of 3
  1. #1
    Join Date
    Jan 2010
    Posts
    1

    Designing a Database for scientific data. Hello from RI!

    Hi all, my name is Bruce, and I'm ok with computers. By ok, I mean I can use them well. I know how to do a little programming, and have worked with FORTRAN and VisualBasic, & C#, etc. But I'm having some trouble with databases. Something big I never have needed to learn was relational databases. I'm having some trouble putting one together.

    I need to develop a method for our laboratory to quickly view data, so that we can classify the data as showing us a positive test or a negative one. Our lab is researching explosives detection.

    Hopefully you will be able to help me, or point me in the right direction. Since I'm just starting, I've decided to use OOo Base to construct my database.

    I've run hundreds of tests that I would like to enter into the database. I don't mind doing it manually, because since it hasn't ever been thoroughly organized, it will need a human touch to import.

    All of the data I need to organize has the following information:

    Catalyst (1 record per test)
    Date of test (1 record per test)
    Fabrication Date (1 record per test)
    Total Flow Rate (1 or many records per test)
    Inert Flow Rate (1 or many records per test)
    Target Flow Rate (1 or many per test)
    Target Gas composition (1 or many per test) <---I think I can change this into a calc'd value.
    Sensor Type (Standard OR Solid State) *Boolean Op.
    A Testing Notes field. (1 or 2 records per test)
    3 digit reference code (2 records per test)
    run number (1,2,3...1,2,3,4...1,2,3...)
    Target Resistance (1 or many per test)
    Inert Power (1 or many per test)
    Target Power (1 or many per test)

    Not quite your standard address book and that's why I'm having problems, I have not found a tutorial which shows linking as anything more complex than dates.


    Here is how I'm trying to tackle the problem.


    Every record that has only one record per test goes on a single table; named BASE. It includes:
    Catalyst (1 record per test)
    Date of test (1 record per test)
    Fabrication Date (1 record per test)
    Sensor Type (Standard OR Solid State) *Boolean Op.
    run number (1 record per test)

    I've looked here:

    for how to do a 1:many relationship. Some other fields I can group, like:

    Total Flow Rate
    Target Flow Rate
    Inert Flow Rate
    (gas composition)

    &

    Target Resistance
    Power in Inert Gas
    Power Target Gas

    I have been trying for much of the day to figure out how link these separate tables. Do I add another field to each of the tables that isn't BASE to link with the Record# field in base?

    Any feedback is greatly appreciated.

    Bruce Schaller

  2. #2
    Join Date
    Oct 2002
    Location
    Baghdad, Iraq
    Posts
    697
    You might be getting confused because FORTRAN and C# both use pointers. (Okay, references in C#.)

    A pointer is a one way connection. In an RDBMS, the connections between objects are two way because it's just a test of whether two fields have the same value.

    The way to think about it is to ask yourself what entities you're recording. Different types of entities have different attributes.

    You have to figure out what uniquely identifies an entity. More often than not, people wind up generating a surrogate id, probably called ID. In OpenOffice, choose Integer as the data type and you'll see AutoValue.

    Since you're dealing with experiments, you might not want to make it autovalue. If there's a label or something the researcher has to fill in and that has to be unique, you can use that.

    So:

    Code:
    Table BASE
    ID Integer
    Date...
    
    Table TargetGas
    TestID -- related to ID
    Composition
    ...
    If you go into Relationships, drag from TestID to ID and you should get a 1:n relationship drawn between the two.

  3. #3
    Join Date
    Apr 2008
    Location
    Bangalore, India
    Posts
    27

    Try LR

    Hello Bruce, I could'nt help pointing you to LyteRAD which allows you to build such table relationships easily in Non-SQL terms. There's a free edition available, you could try it out. Of course I work for the company
    --
    Girish.B
    Lytecube.com
    code free application environments

Tags for this Thread

Posting Permissions

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