首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使监测站数据库标准化

使监测站数据库标准化
EN

Database Administration用户
提问于 2015-10-03 09:37:48
回答 1查看 33关注 0票数 0

我有关于监测站的数据。目前,它存储在Excel选项卡中。我决定试着建立一个数据库。这将是我第一次接触数据库。下面是一个示例,说明它在Excel中的外观

代码语言:javascript
复制
Typ   Station name   Typ of area     Location     long    lat    Time/date/concent
pm      Kittsee        suburban     background
SO2   Oberschützen      rural        traffic
SO2     Kittsee        suburban     background
....
....

如你所见,有些电台会发生两次或更多次。所以我决定把它们放在另一个标签上

代码语言:javascript
复制
typ_id  typ
 1       pm
 2       SO2

然后将station_id和typ_id放在下一个选项卡中

代码语言:javascript
复制
typ_id  station_id
 1         1
 2         1
 2         2 

所以我的问题是,我能用这个方法定位和区域吗?因此,主表中的列将如下所示:

代码语言:javascript
复制
station_id typ_id station_name area_id location_id long lat time_date_conc
EN

回答 1

Database Administration用户

发布于 2015-10-03 11:25:43

可以,停那儿吧。但是,有些数据库实现允许枚举或枚举类型,因此,如果您的站点类型可以来自一个小列表,则使用枚举类型sir可能更好,这与具有查找表的效果相似,但运行速度要快得多。

此外,您可能不需要一个我想要的站点。主键可以由多个列组成,我不知道,但我猜没有一个站点的名称和类型相同。如果是这样的话,您可以使主键由他的两个列组成!

在数据库实现中搜索主组合键以了解如何做到这一点,但是在SQL中这样做如下:

代码语言:javascript
复制
name VARCHAR(100) NOT NULL
type VARCHAR(10) NOT NULL
PRIMARY KEY (name, type)

虽然请记住,您的完整创建语句将有更多的信息,您可能不希望这些长度为您的文本。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/116880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档