Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations TouchToneTommy on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Computing functional Dependency of a Access Table

Status
Not open for further replies.

tansc81

Technical User
Mar 2, 2003
15
GB
Anyone have any idea how can i computing the functional Dependency of a Access Table???? For example in the table of employee table.. most fields should be dependent on the primary key...

For example, in my table there are fields like,
personId, Name, Surname, age, date of birth,Area code, telephone number, address, country.

I would like to compute the Functional Dependency for each field.. Which meant a column C1 is functionally dependent if the valuse of C1 uniquely implies another column C2 x% of the time, where x is a user specified value.

Therefore in my table..
1)Name, surname,telephone number, address, country functionally depend on the personId.

2) age depend on Date of birth because age is a derived value, from the current date and date of birth

3) Area code depend on the country.

The x% is the dependacy percentage...fully dependent or partial depend, maybe due to 2 primary keys in the table.

we shouldnt store age in the table, tat wat i want to detect in my porgram. I'm trying to develop a tool tat allow user to analysis their Access DB.

In this case of the age, we shouldnt stored derived column, age, in the table, because we could compute using the DOB. This also means tat Age is functional dependent on DOB. I want to detect these type of relationship. In another words, i will like to analyse the relationships between column within a table.

The main aim of my program is to analysis any ACcess DB. To detect normalisation and To analyse that if is there any First, 2nd or 3rd Normal form
 

The dependancies you mention are, to you and me, completely logical and that we as humans know that a date field signifies an occurance in a moment of time. And that if a field is named "Date of Birth" we could in fact determine the amount of time passed since that occurance, and we may call that amount of time "Age." To a computer, alas even some programmers, a database field is no more than a storage container of meaningless data. We, as analysts, draw reference to the names of these fields and assign relational meaning between columns in a database. Unfortunatly, if a progammer decides to assign meaningless column names to a table, say "DateLifeBegan" and "DOB" it would not be as easy to determin the it's purpose and meaning.

Albeit noble, I don't think you could cover all the possible variances in programmer naming conventions and, sad to say, variances in relational thinking to make the endeavor worthwhile.

Mark
 
The concept is refered to as "regression analysis". Excel includes a somewhat crude version of one of these. To actually apply even the simplistic version to any useful relational databse would -in my opinion- require more resources than are generally available in the typical "PC" currently in use. To actually apply an 'industrial strength' version to do an unatended analysis is (again MY OPINION) simply far fetched, and could even provide grossly misleading information. MichaelRed
m.red@att.net

Searching for employment in all the wrong places
 
hm... but i've come across application tat allow user to calculate the functional dependency.

I suspect it similar to data mining 1Rule (1R) algorithm. Have anyone hear of it b4? Can someone pls explain... i've read on this algorithm but still have some doubt abt it
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top