我是一名学生程序员,我的工作是开发一个软件系统来监控员工的时钟、时钟和记录时间。员工将使用一个附加在前台电脑上的键盘将他们的员工身份输入到一个gui中,该gui会将他们输入/退出。办公室经理还将使用另一个gui来监视员工的进出情况,并跟踪谁在办公室。
该项目是VS 2010中的一个windows表单项目,有两个gui(如前所述)和一个Access 2007数据库来存储数据。办公室经理gui有一个DataGridView对象,我想用雇员的名字填充它,他输入或输出的时间。我希望这件事能实时发生。换句话说,一旦员工打卡进来,它就会出现在办公室经理gui中。我正在寻找的是这种方法的最佳实践。我应该采用客户机/服务器的方法吗?我是否应该从数据库中得到一些触发器,以提醒触发一个事件,以便将员工的时钟输入/退出时间填充到office manager DataGridView中?
数据库和查询都是设计好的。我只是在寻找解决这个问题的最佳实践。我是一个初级的大学生,我一直来stackoverflow.com。这是我的第一个问题,所以不管怎么说,这对我来说都是一大步:)提前谢谢。
发布于 2013-10-07 17:17:59
如果您与微软结盟(并且正在使用.NET等),您可能会发现很容易采用SQL路线(微软设计的所有工具都是相似的,并且集成得很好)。
您可以下载带有高级服务的services (该项目2005年以后的任何版本都可以,只要它包括management,您可能还想要Reporting )
我的方法是不时轮询数据库,以监视时钟输入/输出表中的更改。
我不会使用access,因为它不是实际数据库的最佳解决方案,而且扩展得不是很好。虽然它会对您的项目工作良好,但值得您在SQL server上获得一些经验。
我假设您的clocking /out视图只会显示一页员工姓名,并将基于日期--在这种情况下,每5-10秒在数据库中触发一个查询,以获得当前状态不会引起任何问题。
虽然可以将通知从SQL推送到客户端,但在客户端安装一个计时器通常很容易,而且不会在此规模的应用程序中造成任何性能影响。
https://stackoverflow.com/questions/19230375
复制相似问题