【发布时间】:2021-11-28 01:51:56
【问题描述】:
我在使用 MS Access 数据库的 PHP 中遇到了一些问题,当我在 PHP 中运行查询时显示错误
odbc_exec():SQL 错误:[Microsoft][ODBC Microsoft Access Driver] 参数太少。预期 1.,SQLExecDirect 中的 SQL 状态 07001
但是当我要回显“$query”变量并在 Microsoft Access 中运行语法时运行良好。
这是我的查询:
<?php
// setup database for your microsoft Access
// you can setup password in you microsoft Access
// this is a variable for your connection in odbc
// "zkConnection" is your ODBC Data Source Administrator
$conn = odbc_connect("zkConnection", "", "");
// create condition for testing conecction
if ($conn) {
// echo "<br>Connection Established</br>";
} else {
echo "Koneksi Gagal";
}
$from_date = date('d/m/Y', strtotime($_REQUEST['from_date'])) . ' 00:00:00';
$to_date = date('d/m/Y', strtotime($_REQUEST['to_date'])) . ' 23:59:59';
$query = "INSERT INTO CalculateData(USERID, Name, lastname, CardNo, DEPTID, DEPTNAME, SUPDEPTID, datein, timein, dateout, timeout) SELECT USERID, Name, lastname, CardNo, DEPTID, DEPTNAME, SUPDEPTID, Format(CHECKTIME, \"dd/mm/yyyy\") AS datein, FORMAT(MIN(CHECKTIME), 'h:m:s') AS timein, Format(CHECKTIME, \"dd/mm/yyyy\") AS dateout, FORMAT(MAX(CHECKTIME), 'h:m:s') AS timeout
FROM TransactionLog WHERE CHECKTIME BETWEEN #$from_date# AND #$to_date#
GROUP BY USERID, Name, lastname, CardNo, DEPTID, DEPTNAME, SUPDEPTID, CHECKTIME ";
if ($query) {
// echo $query;
}
$letsgo = odbc_exec($conn, $query);
if ($letsgo === false)
{
die(print_r( odbc_error(), true));
}else{
}
header("location: index.php");
?>
这是我的表字段 CalculateData : CalculateData
这是我的表字段 TransactionLog :
TransactionLog
【问题讨论】:
-
SQL Server MS Access - 请更正您的标签。
-
根据问题指南,请不要发布代码、数据、错误消息等的图像 - 将文本复制或输入到问题中。请保留将图像用于图表或演示渲染错误,无法通过文本准确描述的事情。