Buenas, estoy usando PHP con la extension ADOdb para atacar a una base de datos access.
actualmente me va de fabula, a pesar de que considero que las bases de datos MDB/Access son de juguete, para pequeñas cosas suelo usarlas, sobre todo en el entorno laboral.
el problema que tengo actualmente es que me veo en la imposibilidad de hacer una consulta SQL con una clausula WHERE que tenga una fecha. pasteo codigo:
conexion a la BBDD:
include('adodb/adodb.inc.php');
$db =& ADONewConnection('access');
$db->debug = true;
$dsn = "Driver={Microsoft Access Driver (*.mdb)};Dbq=e:\\AlmaEast\\AlmaArte.mdb;Uid=Admin;Pwd=;";
$db->Connect($dsn);
consulta SQL que da error
$sql='SELECT DISTINCTROW Sum(Bultos*Peso) FROM Movimientos WHERE ((Fecha)<=#'.$beforedesdesql.'#);';
$rs = $db->Execute($sql);
la variable $beforedesdesql es una cadena con el contenido "09/23/2007", por el formato clasico de consultas de fecha access, del tipo mes-dia-año
y aqui el error que escupe la web en cuanto ejecuto el script.
(access): SELECT DISTINCTROW Sum(Bultos*Peso) FROM Movimientos WHERE ((Fecha)<=#09/23/2007#);
Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][Controlador ODBC Microsoft Access] Pocos parámetros. Se esperaba 1., SQL state 07001 in SQLExecDirect in C:\xampp\php\pear\adodb\drivers\adodb-odbc.inc.php on line 530
07001: [Microsoft][Controlador ODBC Microsoft Access] Pocos parámetros. Se esperaba 1.
ADOConnection._Execute(SELECT DISTINCTROW Sum(Bultos*Peso) FROM Movimientos WHERE ((Fecha)<=#09/23/2007#);, false) % line 861, file: adodb.inc.php
ADOConnection.Execute(SELECT DISTINCTROW Sum(Bultos*Peso) FROM Movimientos WHERE ((Fecha)<=#09/23/2007#);) % line 134, file: facturacion.php
estoy mareado y no se como hacer un select con fechas usando ADODB, siempre me sale error.
¿una ayudita?