2013-01-23 31 views
0

我期待开发一个MySQL数据库。该数据库的主要独特信息将是MAC地址(例如,AA:BB:CC:DD:EE:FF)。对于每个MAC地址记录,将会有多个子记录,这些记录将记录何时记录这些MAC地址。因此,本场将是MAC地址子记录,如果你喜欢,并且将包含以下内容: - 对于检测到的MAC地址 MySQL DB的结构

  • 日期和时间
  • 经度
  • 纬度设备

    • 参考号码

    这将是这只是不断网络连接的被动数据。尽管如此,我还想拥有一个有效的表格/列表,我可以指定一个MAC地址,如果检测到该记录,则使用上述相同的信息记录一条记录。

    我不知道什么是构建此信息的最佳方式?我假设我将有一个包含MAC地址的主表,然后将一个外键链接到另一个包含参考号,日期和时间,长和经度表的表?如何最好地构建被动地整理信息,并积极整理信息。

    随着被动整理的数据,我可能要在某些阶段然而,随着活动列表查询它(MAC地址看出来),我想这些都是检测时设置电子邮件警报,所以我不知道是否将这些分开存储。

    理想情况下,我希望将所有数据都放在一张表中作为被动或主动数据,因此我只是想知道是否可以在包含MAC地址的主表中添加另一列,将其标记为“活动”因此,对于此MAC的任何检测,我可以生成代码来创建电子邮件?

    我希望这是有道理的

  • +1

    这似乎是一个薄弱的建议,但我会建议先尝试你的一些想法。写一个概念的快速证明,并发现一些优点/缺点。如果您尝试预先设计整个系统,您会遇到困难。一旦你看到实际的代码运行,事情会变得更加清晰,你可以迭代和改变它,直到你喜欢结果。 – ryan1234

    回答

    1

    我认为你是在正确的轨道上。使用MAC地址和ID创建主表,然后另一个表可以跟踪MAC地址(ID,MAC_ID,REF_NUM,DateTime,LONG,LAT)的活动。我认为在MAC地址表中插入一个标志是一个好主意,或者你可以有一个包含MAC_ID(或MAC地址)的单独表格,并将其用作查找表。您可能需要创建一个触发器,以便如果发送的MAC地址位于'watch'表中,它将插入到'Active'表中,这听起来像是与REF_NUM一起复制活动表等

    另一种选择是将表结合起来,只是在如果MAC地址查找表,或者如果该行被通过触发插入发现,被检查的活动表的标志。只是大声思考。

    下面是带有示例数据表结构的一个例子:

    MAC_ADDRESSES_TABLE 
    MAC_ID (PK)  MAC_ADDRESS 
    1     00-B0-D0-86-BB-F7 
    2     00-B1-D0-86-BC-F8 
    3     00-B2-D0-86-BD-F9 
    4     00-B3-D0-86-BE-A7 
    5     00-B4-D0-86-BF-A9 
    …    … 
    
    
    MAC_ACTIVITIES_TABLE      
    MAC_ACTIVITY_ID (PK) MAC_ID (FK)  REF_NUM   DATETIME  LONG   LAT 
    1        1   A1  1/20/2013 13:40 40.689060 74.044636 
    2        1   B2  1/21/2013 13:40 40.689061 74.044636 
    3        3   C3  1/22/2013 13:40 40.689062 74.044636 
    4        4   A5  1/23/2013 13:40 40.689063 74.044636 
    5        4   D9  1/24/2013 13:40 40.689064 74.044636 
    …        …   …   …     …   … 
    
    +0

    这会包括外键吗?我不确定如何将MAC活动表链接到主MAC地址表 – thefragileomen

    +0

    正确。您的MAC活动表将通过外键绑定到MAC地址表。 – N1tr0