我想使用 php 从 ms access 选择数据
这是我的代码:
$dbdir = "D:\payroll2\ATT2000.MDB";
$conn = odbc_connect("DRIVER=Microsoft Access Driver (*.mdb);DBQ=$dbdir",
"administrator",
"");
$b = 4104;
$jo = date('n/j/Y h:i:s A',strtotime('2016-01-21 00:00:01'));
$ji = date('n/j/Y h:i:s A',strtotime('2016-01-21 23:59:59'));
$sql = "SELECT TOP 20 * from CHECKINOUT inner join USERINFO on CHECKINOUT.USERID = USERINFO.USERID where USERINFO.SSN = '$b'";
$rs = odbc_exec($conn,$sql);
odbc_fetch_row($rs, 0);
while (odbc_fetch_row($rs)) {
echo odbc_result($rs,"CHECKTIME"); print('<br>');
}
odbc_close($conn);
}
它工作正常,但我想选择两个日期之间的数据
所以我添加AND CHECKINOUT.CHECKTIME between '$jo' and '$ji'
像这样的查询:
$sql = "SELECT TOP 20 * from CHECKINOUT inner join USERINFO on CHECKINOUT.USERID = USERINFO.USERID where USERINFO.SSN = '$b' AND CHECKINOUT.CHECKTIME between '$jo' and '$ji'";
我不知道为什么它不起作用,
我确定数据存在,并且我的日期格式与 MS 访问日期格式一样持续存在。
任何帮助将不胜感激,
我很抱歉我的英语不好..
对于 MSAccess 和 MS SQL Server,我相信您还需要在日期周围使用哈希符号,并且您可能还需要使用CDate()
以确保日期被识别为日期。
$sql = "SELECT TOP 20 * from CHECKINOUT
inner join USERINFO on CHECKINOUT.USERID = USERINFO.USERID
where USERINFO.SSN = '$b' AND CDate( CHECKINOUT.CHECKTIME ) between '#{$jo}#' and '#{$ji}#'";
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)