asp.net做考勤系统要用到SQL数据库的job吗

2024-12-14 10:15:22
推荐回答(5个)
回答1:

刷卡得到的数据当然是从考勤机中获取了,思路:将卡玛、帐号输入考勤机,刷卡后,通过考勤机的SDK获取考勤机内的数据,将刷卡数据写入数据库时,是写入的帐号、刷卡时间。没有必要在把卡玛写入了,如果需要写入的话,直接关联数据库中其余表的卡玛字段不急可以了啊。本人刚做完考勤系统,到时可以指导一二。不过时间有限,小问题就不要问我了。大问题还可以。嘿嘿。。。。给你段代码让你研究研究吧!!
AttClass[Index].axCZKEM1.GetDeviceStatus(AttClass[Index].iMachineNumber, 6, ref iValue); //判断考勤机流水记录数量
if (iValue > 0)
{
if (AttClass[Index].axCZKEM1.ReadGeneralLogData(AttClass[Index].iMachineNumber))//把考勤机内的流水记录写入到内存中
{
#region 写入流水记录

while (AttClass[Index].axCZKEM1.GetGeneralLogDataStr(AttClass[Index].iMachineNumber, ref idwEnrollNumber, ref idwVerifyMode, ref idwInOutMode, ref sTime))//从内存中读取流水
{
iGLCount++;
LVattRecord.Items.Add(AttClass[Index].iMachineNumber.ToString()); //设备编号
LVattRecord.Items[iIndex].SubItems.Add(iGLCount.ToString()); //流水号
LVattRecord.Items[iIndex].SubItems.Add(idwEnrollNumber.ToString().Trim().PadLeft(5,'0'));//账号

if (idwVerifyMode == 2) //登记比对方式(0射频卡,2密码)
{
VerifyMode = 0;
LVattRecord.Items[iIndex].SubItems.Add("射频卡");
}
else
{
VerifyMode = 2;
LVattRecord.Items[iIndex].SubItems.Add("密码");
}
LVattRecord.Items[iIndex].SubItems.Add(sTime); //刷卡时间
//写入数据库
iIndex++;
}

好心人忘记告诉你联系方式了:wxd-860825@163.com
记住:像这样的小问题就不要问了,这次给你详细说了,下次再有问题,可就是笼统的讲了。!!!

回答2:

job是个工作,只要数据库的服务不中断,不挂掉,就会根据你的设置要求,去跑,具体的话,你可以直接搜索一下,没记错的话,Sql的Job不同的版本里面多少有一些差异。如果跨库的话,就更麻烦了。

回答3:

job就是数据库按照你的设置的时间定时去执行一段sql文或者一个存储过程,我用过oracle的,百度一下,很简单

回答4:

SQL SERVER 2005以后用SSIS定时抽数就可以了

回答5:

不用Job也可以啊, 你要实现定时插数据, 可以写个Windows 服务来做, 也可以简单写个控制台, 放在计划任务定时执行都可以, 当然用Job也是可以的