DB2 - SELECT AYUDA PLEASE

 
Vista:

SELECT AYUDA PLEASE

Publicado por ANDRES FERNANDO CORTES (1 intervención) el 03/05/2006 09:33:03
stoy trabajando con una intranet diseñada en php pero enuna de las paginas tengo que conectarme con un servidor as400 y hacer un par de consultas, en las paginas donde hago las consultas sin la sentencia where me las muestra bien pero cuando quiero filtrar los datos me sale el siguiente error

Warning: odbc_exec(): SQL error: [IBM][iSeries Access ODBC Driver][DB2 UDB]SQL0104 - Token <END-OF-STATEMENT> was not valid. Valid tokens: < > = <> <= !< !> != >= ¬< ¬> ¬= IN., SQL state 37000 in SQLExecDirect in c:\appserv\www\new_intra\odbc\funciona2.php on line 11

este es el codigo que funciona sin el where

<?php

$conn = odbc_connect('ANDRES','AFCORTES','pedAA01');

$nrows=0;

if ($conn)
{
$sql = "select * from CCOP2XBDT.F5Z7501";
//this function will execute the sql satament
$result=odbc_exec($conn, $sql);

echo "<table align=\"center\" border=\"1\" borderColor=\"\" cellpadding=\"0\" cellspacing=\"0\">\n";
echo "<tr> ";
// -- print field name
$colName = odbc_num_fields($result);
for ($j=1; $j<= $colName; $j++)
{
echo "<th align=\"left\" bgcolor=\"#CCCCCC\" > <font color=\"#990000\"> ";
echo odbc_field_name ($result, $j );
echo "</font> </th>";
}
$j=$j-1;
$c=0;
// end of field names
while(odbc_fetch_row($result)) // getting data
{
$c=$c+1;
if ( $c%2 == 0 )
echo "<tr bgcolor=\"#d0d0d0\" >\n";
else
echo "<tr bgcolor=\"#eeeeee\">\n";
for($i=1;$i<=odbc_num_fields($result);$i++)
{
echo "<td>";
echo odbc_result($result,$i);
echo "</td>";
if ( $i%$j == 0 )
{
$nrows+=1; // counting no of rows
}
}
echo "</tr>";
}

echo "</td> </tr>\n";
echo "</table >\n";
// --end of table
if ($nrows==0) echo "<br/><center> Sin datos $month que concuerden con su busqueda</center> <br/>";
else echo "<br/><center> Total Records: $nrows </center> <br/>";
odbc_close ($conn);

}
else echo "odbc not connected <br>";
?>


y este es el que no fucniona no se porque ayudenme por favor

<?php
$conn = odbc_connect('ANDRES','AFCORTES','pedAA01);

$nrows=0;

if ($conn)
{
$sql = "SELECT * FROM CCOP2XBDT.F5Z7501 WHERE $AVEHI IN('SGM535')";

//this function will execute the sql satament
$result=odbc_exec($conn, $sql);

echo "<table align=\"center\" border=\"1\" borderColor=\"\" cellpadding=\"0\" cellspacing=\"0\">\n";
echo "<tr> ";
// -- print field name
$colName = odbc_num_fields($result);
for ($j=1; $j<= $colName; $j++)
{
echo "<th align=\"left\" bgcolor=\"#CCCCCC\" > <font color=\"#990000\"> ";
echo odbc_field_name ($result, $j );
echo "</font> </th>";
}
$j=$j-1;
$c=0;
// end of field names
while(odbc_fetch_row($result)) // getting data
{
$c=$c+1;
if ( $c%2 == 0 )
echo "<tr bgcolor=\"#d0d0d0\" >\n";
else
echo "<tr bgcolor=\"#eeeeee\">\n";
for($i=1;$i<=odbc_num_fields($result);$i++)
{
echo "<td>";
echo odbc_result($result,$i);
echo "</td>";
if ( $i%$j == 0 )
{
$nrows+=1; // counting no of rows
}
}
echo "</tr>";
}

echo "</td> </tr>\n";
echo "</table >\n";
// --end of table
if ($nrows==0) echo "<br/><center> Sin datos $month que concuerden con su busqueda</center> <br/>";
else echo "<br/><center> Total Records: $nrows </center> <br/>";
odbc_close ($conn);

}
else echo "odbc not connected <br>";
?>

por favor ayudenme me estoy rompiendo el coco y mi jefe me esta sacando los ojos

muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:SELECT AYUDA PLEASE

Publicado por Juan Triana (1 intervención) el 19/01/2007 22:01:38
El error esta en el where, quitale a la variable AVEHI el signo $

SELECT * FROM CCOP2XBDT.F5Z7501 WHERE AVEHI IN('SGM535')

....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar