这个表的意思是:
标准状态下,air的密度是1.29280,H2的密度是0.08994,N2的密度是1.25050,密度是定值,不随温度变化;
0℃时air的粘度是0.0171,H2的粘度是0.0084,N2的粘度是0.0166;
5℃时air的粘度是0.0173,H2的粘度是0.0085,N2的粘度是0.0168;
10℃时air的粘度是0.0176,H2的粘度是0.0086,N2的粘度是0.0171;
这只是气体表的一部分,源数据有27种气体,30个温度值;
此外还有水表,水表多了个压力字段,密度、粘度随温度变化,有80个温度值如下图:
小弟现在要把这两个表里的数据放到数据库表里,不知该如何安排字段,请高人指点
上图俩表,字段不同,
第一个表是气体属性表,没有压力字段。密度和气体名称相对应,不随温度变化。
第二个表是水属性表,多一压力字段。密度随温度变化。【附:我是灿飞同事,共同解决此问题】
30个温度值和80个温度值是一个枚举,也可以说是一个字典,当你把这些值当字典来用时,数据记录可以直接用一个字段表示,
把记录的值当多条数据库记录来处理好像可以完成你的需求
本人愚钝,不太明白
@灿飞屋: 流体种类,流体名称、算法公式等这个放一张表就是数据字典
另一张表就是产生的数据
程序去处理其他逻辑
你是要把这两个表里的数据整合到一个数据库表里么?
只要能解决问题,多个表或一个表都可以
@灿飞屋: 额 ,俺不会加图片呢....把我常用的数据库建表的代码给你吧,仅供参考啊。
先见两个码表 温度和 物质名称(水和各种气体)
/*===========================================*/ /* Table: Temperature */ /*===========================================*/ create table Temperature ( ID uniqueidentifier not null, C nvarchar(50) null, F nvarchar(50) null, constraint PK_TEMPERATURE primary key (ID) ) go
/*============================================*/ /* Table: Material */ /*============================================*/ create table Material ( ID uniqueidentifier not null, Type nvarchar(50) null, Name nvarchar(50) null, constraint PK_MATERIAL primary key (ID) ) go
然后是物质属性表
/*============================================*/ /* Table: Attributes */ /*============================================*/ create table Attributes ( ID uniqueidentifier not null, Material uniqueidentifier null, TemperatureId uniqueidentifier null, Density nvarchar(100) null, Viscosity nvarchar(100) null, Pressure nvarchar(100) null, constraint PK_ATTRIBUTES primary key (ID) ) go
这样子的表可以组合出来你想要的结果吧
这个表的设计方式比较多,你能否总结一些常用的使用这些数据的场景。
输入压力0.1和温度20后自动生成粘度和密度
@灿飞屋: 从你这个场景来看:
输入为:流体种类,流体名称,压力,温度;
输出为:粘度,密度;
用于粘度和密度相对于输入条件的值得组合并不相同,同时考虑到可能还有其它的由输入条件映射的指标(同粘度、密度,在这里,我们把它们定义为指标),那么那么最简单的表结构就是:
流体种类,流体名称,压力,温度,指标类别,指标值
考虑到流体和指标的扩展性,那么我们可以分成三张表:
表一(流体表):流体种类,流体名称
表二(指标类别表):指标类别,指标名称
表三(指标表):流体种类,压力,温度,指标类别,指标值
表一 类别:类型ID,类别名
表二 流体表: 流体ID,流体名称, 类型ID
表三 属性表:流体ID,温度,密度,压力,粘度,其他属性
表一:物质Id,物质名称,物质密度
表二:Id,物质Id,温度,粘度,饱和蒸气压
温度表与粘度表示多对多的关系,简言之再建一个关联表即可