473,410 Members | 1,852 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,410 software developers and data experts.

2nd post Database design different attributes

Hi all,

Kindly help me out on this one. I am having a computer shop and we have many
IT related equipments nearly 30 categories which comprises of Servers,
Laptops, PC's, Printers, routers, switches, monitors, Software etc...
Now each of the aboved mentioned category have different attributes such as
Servers may have different configuration like raid, SCSI Hdd, etc, Laptops
may have different attributes from that of PC's, similarly printers, scanner
and monitors have different attributes which are in no way related.

Output needed :
a) To maintain and track all the IT equipment which includes warranty etc
for all the equipments.
b) To check on support/service of equipments when I hand them over for
repair for example.
c) To generate invoices for customers who take or rent stuff from us.

Design
I tried to design this by keeping the following tables
A)
1) tblManufacturers -- Includes all the manufacturer details eg: HP, ACER,
etc
2) tblSuppliers -- Includes all our supplier information.
3) tblAssetCategories -- Includes all the nearly 30 above mentioned eg:
Laptop, Servers, Printers, Monitors, etc.
4) tblCommonAttributes -- Make, Serial No, Warranty Info, Purchasedate,
Purchasecost, etc
5) tblComputer -- Casing, Floppy, USB, MotherBoard, Processor, RAM, etc
6) tblServer -- RaidController, SCSI Type, TapeDrive etc
7) tblLaptop -- battery type, LCD screen type, Touch pad,
8) tblLaserPrinter -- PPM, RAM, trays, etc
9) tblDeskjet -- Catridges details etc.
similarly for the each asset tblRouter, TblSwitch with their attributes.
B)
tblCustomer --contains customer details
tbltransactions --contains details of all the transactions carried out
Related in 1 -- Many -- 1 with AssetID (obtained from the various tables)
C)
tblServiceRelated --- Conatins Items which are under repair/service.
tblScrap -- Items that need to de disposed
I also thought of trying to use One to One relation but that just adds up to
the confusion.

Problem area:
1) How can I link the Primary Key*s* from all the various tables such as
tblComputer which has PK AssetID for every computer
and also from tblLaptops (PK AssetID) , tblMonitors(PK AssetID) ,
tblPrinters (PK AssetID) , etc into the tblTransactions?
Also, I need to have select AssetID when I send them out for service or
to Scrap.

2) If I rent out certain equipment to any customer and if that equipment is
faulty we take it down to repair and assign him another one
till the equipment is fixed and returned and we do not charge him for
that much period for that month. Any Ideas please.

Please do let me know if my approach is correct and if any changes need to
be done. Awaiting eagerly for your replies thanks in advance.
--
Regards,
B


Nov 13 '05 #1
2 1494
"Burghew" <no****@sorry.com> wrote:
Hi all,

Kindly help me out on this one. I am having a computer shop and we have many
IT related equipments nearly 30 categories which comprises of Servers,
Laptops, PC's, Printers, routers, switches, monitors, Software etc...
Now each of the aboved mentioned category have different attributes such as
Servers may have different configuration like raid, SCSI Hdd, etc, Laptops
may have different attributes from that of PC's, similarly printers, scanner
and monitors have different attributes which are in no way related.

Output needed :
a) To maintain and track all the IT equipment which includes warranty etc
for all the equipments.
b) To check on support/service of equipments when I hand them over for
repair for example.
c) To generate invoices for customers who take or rent stuff from us.

Design
I tried to design this by keeping the following tables
A)
1) tblManufacturers -- Includes all the manufacturer details eg: HP, ACER,
etc
2) tblSuppliers -- Includes all our supplier information.
3) tblAssetCategories -- Includes all the nearly 30 above mentioned eg:
Laptop, Servers, Printers, Monitors, etc.
4) tblCommonAttributes -- Make, Serial No, Warranty Info, Purchasedate,
Purchasecost, etc
5) tblComputer -- Casing, Floppy, USB, MotherBoard, Processor, RAM, etc
6) tblServer -- RaidController, SCSI Type, TapeDrive etc
7) tblLaptop -- battery type, LCD screen type, Touch pad,
8) tblLaserPrinter -- PPM, RAM, trays, etc
9) tblDeskjet -- Catridges details etc.
similarly for the each asset tblRouter, TblSwitch with their attributes.
B)
tblCustomer --contains customer details
tbltransactions --contains details of all the transactions carried out
Related in 1 -- Many -- 1 with AssetID (obtained from the various tables)
C)
tblServiceRelated --- Conatins Items which are under repair/service.
tblScrap -- Items that need to de disposed
I also thought of trying to use One to One relation but that just adds up to
the confusion.

[...]

Instead of tables tblComputer, tblServer, tblLaptop etc. I would
create one table tblAttributes with the fields

Category
AttributeName
AttributeValue

to store the attributes that are unique to each category.

HTH

----== Posted via Newsfeeds.Com - Unlimited-Uncensored-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups
----= East and West-Coast Server Farms - Total Privacy via Encryption =----
Nov 13 '05 #2
Matthias Klaey wrote in message
Burghew wrote:
Kindly help me out on this one. I am having a computer shop and we have
many
IT related equipments nearly 30 categories which comprises of Servers,
Laptops, PC's, Printers, routers, switches, monitors, Software etc...
Now each of the aboved mentioned category have different attributes such
as
Servers may have different configuration like raid, SCSI Hdd, etc, Laptops
may have different attributes from that of PC's, similarly printers,
scanner
and monitors have different attributes which are in no way related.

Output needed :
a) To maintain and track all the IT equipment which includes warranty etc
for all the equipments.
b) To check on support/service of equipments when I hand them over for
repair for example.
c) To generate invoices for customers who take or rent stuff from us.


Instead of tables tblComputer, tblServer, tblLaptop etc. I would
create one table tblAttributes with the fields

Category
AttributeName
AttributeValue

to store the attributes that are unique to each category.


Matthias hit the nail on the head!

For the main tables you could expand on this (roughly)

tblCategories e.g. Laptop, Server etc.
tblAssets with common asset attributes plus foreign key from tblCategories
e.g. this asset is a Server.
tblCategoryAttribute lists the attributes that a category can take e.g.
Laptop, Screen Resolution.
tblAssetAttributes lists the specific attributes of a particular Asset
e.g. AssetID 9874, CategoryAttributeID 15 (Laptop Screen Resolution),
Value 1024x768

tblTransactionType e.g Rental, Repair
tblTransactions e.g AssetID 9874, CustomerID 12, TransactionType Rental,
StartDate 10/03/05, EndDate 10/09/05

etc,

--
peter
http://www.peterhoyle.co.uk
Nov 13 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: John | last post by:
I'm developing an application for medical use that will be used to capture patient background and visit data. The application will have approximately 50 forms, with an average of about 20 fields...
2
by: Anders | last post by:
We need to create a lookup structure that can contain a flexible amount of attributes. We have discussed different design solutions for lookup-functionality, and come up with this suggestion: ...
6
by: Tim Mavers | last post by:
I have a series of database objects that represent things such as people, accounts, etc. I have a set of options (boolean) that I need to add to these objects. Normally I would just create a bit...
9
by: sk | last post by:
I have an applicaton in which I collect data for different parameters for a set of devices. The data are entered into a single table, each set of name, value pairs time-stamped and associated with...
19
by: Steve Jorgensen | last post by:
I've run across this issue several times of late, and I've never come up with a satisfactory answer to the best way to handle this schema issue. You have a large section of schema in which a...
4
by: Burghew | last post by:
Hi all, I am trying to design a database in access 2002. I have multiple category of items such as computers which may include laptop, server, pc...all of these items have different attributes,...
2
by: CAradhana | last post by:
I am checking online shopping sites like amazon. Can anybody tell me, is there any way to get Product database structure. i.e. database design to store product category and corresponding attributes...
5
by: MadDiver | last post by:
Guys, I need to create an application that handles several product types/ categories. Each product type can have totally different fields to describe it. For instance a car would have Year,...
12
by: nyathancha | last post by:
Hi, I have a question regarding best practices in database design. In a relational database, is it wise/necessary to sometimes create tables that are not related to other tables through a...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.