您的位置:首页 > 其它

关于装配类数据的简单设计

2007-02-24 13:46 369 查看
为了管理好电脑各类配件,想尽办法要做一个装配件一样的设备管理,我的想法是这样的:

1、装配关系只是一种约束,但是装配关系是一定的

2、设备和关系之间是一种松耦合关系,对于某一设备可以定义装配关系,但是该设备可以脱离装配关系而存在,如键盘是一种配件,但是在管理上如同设备一样管理。

3、每一个配件(设备)都有默认的装配关系存在,但是可以脱离该装配关系而在另一装配关系上存在。如笔记本电脑的装配关系上不存在显示器,但说不定哪天我愿意配上一个19宽屏的显示器用而不用其显示屏

4、主设备一定要存在装配关系,否则无法使用装配关系来管理其配件。就象主机一样,如果不定义好装配关系,那么在装上CPU时,则无法装上。

具体的数据设计:

1、装配关系表:

if exists(select * from sysobjects where name='ComponentModel')
drop table ComponentModel
go
create table ComponentModel( --设备装配模型表
cmautoid int identity(1,1), --自动编号
cmid varchar(20) primary key, --装备编号
cmname varchar(50), --名称
cmpid varchar(20), --父级编号
cmmemo varchar(50), --备注
cmnecessary bit, --是否必配件
cmbeone bit --是否单配件
)

2、物料编码表,从实践证明,用物料编码是胜于不编码的,并且在这儿有个好处,可以定义默认的装配关系

create table bd_stock(
stkautoid bigint identity(1,1),
stkid varchar(20) primary key clustered, --ID
stkname varchar(50) not null, --名称
stkstid varchar(10) foreign key references bd_stocktype(stid), --分类号
stkspec varchar(50), --规格
stkstyle varchar(50), --型号
stkmeasid varchar(5) foreign key references bd_measure(msid), --计量单位编号
stkassismeasid varchar(5), --默认的辅 计量单位
stkmark varchar(20), --品牌
stkcpid varchar(20), --装配号
stkmechid varchar(20), --机械图号,
stkisbatch bit, --是否批次管理
stkoragin varchar(20), --产地
stkstand varchar(20), --执行标准
stkquality varchar(20), --质量
stkmemo varchar(50), --备注
stkmin float, --最小量
stkmax float, --最大量
stkcostref float, --成本参考
stksaleref float, --采购/销售参考
stkfirmdays smallint, --
stkservice bit, --是否服务
stkinuse bit default(1), --是否在用
stkpurround smallint, --采购周期
stkzjf varchar(20) --助记符
)

3、设备表

create table OA_Device( --设备表
dvautoid int identity(1,1), --自动编号
dvid varchar(20) primary key, --编号
dvcmid varchar(20), --装备编号
dvmid varchar(10), --管理编号
dvtype varchar(10), --分类编号
dvname varchar(20), --名称
dvstkid varchar(20) foreign key references bd_stock(stkid), --商品编号
dvunit int,
dvmark varchar(20), --品牌/厂商
dvinterface varchar(20), --接口
dvspeed numeric(10,3), --速率
dvspdunit varchar(20), --速率计量单位
dvcontain numeric(10,3), --容量
dvctnunit varchar(20), --容量计量单位
dvmain varchar(20), --主设备
dvepid varchar(10), --使用公司`
dvdpid varchar(10) foreign key references bd_department(dpid), --部门
dvempid varchar(10) foreign key references bd_employee(empid) ,--操作人
dvisfree bit, --是否闲置
dvfiredate smalldatetime, --报废日期
dvsupply varchar(10), --供应商
dvpurchasedate smalldatetime, --采购日期
dvsn varchar(50), --序列号
dvmemo varchar(50), --备注
dvdate smalldatetime, --开始使用日期
dvchar varchar(50) --特征
)

其他无关紧要的表不列于此
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐