Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL数据库设计员工时间表_Sql_Database Design - Fatal编程技术网

SQL数据库设计员工时间表

SQL数据库设计员工时间表,sql,database-design,Sql,Database Design,我想知道是否有人能告诉我在数据库中存储员工每天工作时间的最佳方法 目前,我一直在考虑一个时间表表格{时间表、员工ID、日期、开始时间、结束时间},但这可能会导致表格快速增长 我可以让它只存储3个月的条目,然后将其余的条目移动到存档表中,或者干脆删除其他条目?(可能是坏习惯)。所以我想知道是否有人能向我解释一下在数据库中管理员工时间表的另一种方法。你的方法很好 不要过早地优化 索引在查询时非常有用。稍微取决于您使用的技术,更多取决于您预期的数量 现代RDM是专门为管理数千、几十万、数百万条记录而构

我想知道是否有人能告诉我在数据库中存储员工每天工作时间的最佳方法

目前,我一直在考虑一个
时间表
表格{
时间表、员工ID、日期、开始时间、结束时间
},但这可能会导致表格快速增长

我可以让它只存储3个月的条目,然后将其余的条目移动到存档表中,或者干脆删除其他条目?(可能是坏习惯)。所以我想知道是否有人能向我解释一下在数据库中管理员工时间表的另一种方法。

你的方法很好

不要过早地优化


索引在查询时非常有用。

稍微取决于您使用的技术,更多取决于您预期的数量

现代RDM是专门为管理数千、几十万、数百万条记录而构建的。如果你能正确地设计和索引你的表格,在你有任何顾虑之前,你可能还有很长的路要走


你对技术的选择将取决于你的公司有多大。如果这是一个小的操作,那么表的增长是一个最小的问题,事实上,您的人力资源部门可能有一个记录保留策略,要求在一定时间后归档、存储或删除Electronic记录

我建议将工作时间记录为一对DATETIME值,或者记录为DATETIME和持续时间(以小时为单位)。如果你只记录“日期”、“开始时间”和“结束时间”,那么计算午夜后下班的可怜员工的工作时间会很尴尬。你会有多少员工??考虑到1000名员工,每年工作200天,每天添加5个条目——你在该表中看到了一百万行——每年。对于任何一个像样的关系数据库系统来说,这都算不了什么!每天一百万可能是个挑战。。。。。