在机房收费中的 上下机记录中,需要获取上机时的时间和日期,因为是用VB做的这个程序,就用了 VB的 date 和 time 函数 直接获取了程序所在PC的时间,然后这个时间就被存入了数据库中。不只是这一条记录,还有其他好多窗体的关于时间的数据,都是通过VB获取PC上的时间。
当时没察觉有问题,直到验收的时候,才发觉了原来这是个错误。
因为客户端的时间是不稳定的,不知道会因为什么缘故计算机时钟时间就会发生变化,这就给数据查询的正确性埋下了隐患。举个例子,假如客户端的机器BOIS电池有问题,每次开机时间都是1900-01-01 00:00:00 ,那么他的上机记录在按时间查询的时候,就只会显示这一天的记录,那么他的记录也就没有多大意义了! 而服务器上的时间是比较稳定,更重的是所有的时间记录都是统一一个时钟,在时间顺序记录上不会混乱!所以在程序中用一个 select getdate() 获取服务的时间再存入数据库就OK了。
博客地址:http://blog.csdn.net/chenjinge7/article/