PHP-ORA-01745: ungültige host/bind variable name Warnung
01745: ungültige host/bind variable name Warnung, wenn die Ausführung der rollowing code. Ich bin nicht sicher, warum dies passiert ist bitte um Hilfe!! Ich fühle mich wie es muss etwas falsch mit meiner Bindung aber ich kann nicht sehen, was ist falsch daran. My $Start und $Ende-Variablen Aussehen wie DD-MM-YY. Ich habe den PHP-code unten. Danke!
PHP:
<?php
$year_Echo = '2013';
$yearTruncation = substr($year_Echo, 2);
$yearTruncationMinusOne = $yearTruncation-1;
$Start = ('1-OCT-'.$yearTruncationMinusOne);
$End = ('30-SEP-'.$yearTruncation);
echo "Start = ".$Start." End = ".$End." Year Truncation Minus One = ".$yearTruncationMinusOne."<br>";
/*** connect or WFO DB ***/
$db = oci_connect('query','pw','server:1521/view');
if (!$db){
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
$query = "SELECT * FROM db.cooldb WHERE (STATUS = 'ACTIVE' OR STATUS = 'CLOSED') AND NUMBER <> ' '
AND AMENDMENT_DATE_CREATED
BETWEEN :start AND :end
ORDER BY AMENDMENT_DATE_CREATED DESC";
$runQuery = oci_parse($db, $query);
oci_bind_by_name($runQuery, ":start", $Start);
oci_bind_by_name($runQuery, ":end", $End);
oci_execute($runQuery);
while($row = oci_fetch_array($runQuery, OCI_ASSOC+OCI_RETURN_NULLS))
{
echo $row['AMENDMENT_DATE_CREATED']." ".$row['TITLE']."<br>";
}
?>
Fehler:
Warning:
oci_execute() [function.oci-execute]: ORA-01745: invalid host/bind variable name
InformationsquelleAutor vector | 2015-02-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das problem ist, Sie sind mit vorbehalten oracle-Wörter (nämlich ich denke ":Ende" ist der Täter) für eine verbindliche Variablen-Namen, die nicht erlaubt ist.
Versuchen Sie es zu verändern ":fertig" oder ähnliches und es sollte funktionieren.
Hatte ich anfangs auch. Aber Das hat funktioniert!!! Danke.
InformationsquelleAutor macl