Re: [PHP4BETA] OCIParse & OCIExecute
| From: | thies at digicol dot de | Date: | Fri, 21 Apr 2000 14:54:53 +0000 |
| Subject: | Re: [PHP4BETA] OCIParse & OCIExecute | ||
| References: | 1 2 3 4 5 6 | Groups: | php.version4 |
| Request: | Send a blank email to php-version4+get-13889@lists.php.net to get a copy of this message | ||
On Fri, Apr 21, 2000 at 02:15:18PM +0300, Vadim Tkachenko wrote:
> I try this script on my DB -
> result :
> from table MANUF - No records found;
> from table EMP - EMP SMITH;
>
> My table MANUF -
>
> CREATE TABLE MANUF
>
> VEND_CODE CHAR (6) NOT NULL,
> VEND_NAME CHAR (40) NOT NULL,
> PRIMARY KEY ( VEND_CODE )
> )
> INSERT INTO MANUF VALUES ('P-3','My Company');
>
>
> ----------------------------------------------------------------------------
> ---------------------
>
> $stmt=OCIParse($c1,"SELECT VEND_CODE,VEND_NAME FROM MANUF WHERE
> VEND_CODE=:vendcod");
> OCIDefineByName($stmt,"VEND_CODE",&$VEND_CODE);
> OCIDefineByName($stmt,"VEND_NAME",&$VEND_NAME);
>
> OCIBindByName($stmt,":vendcod",&$vendcod,32);
> $vendcod="P-3";
>
> OCIExecute($stmt);
> if (OCIFetch($stmt)){
> echo "Found record!\n";
> echo "$VEND_CODE $VEND_NAME\n";
change to:
var_dump($VEND_CODE,$VEND_NAME);
and you'll see that your columns are blank-padded
use varchar instead of char when creating your table *or* change
your query to :
SELECT VEND_CODE,VEND_NAME FROM MANUF WHERE VEND_CODE like :vendcod
*and*
$vendcod="P-3%"; // note the wildcard -
no bug in oci-driver;)
tc
> }else {
> echo "No record Found!\n";
> };
> OCIFreeStatement($stmt);
>
> $stmt=OCIParse($c1,"SELECT EMPNO,ENAME FROM EMP WHERE ENAME=:empname");
> OCIDefineByName($stmt,"EMPNO",&$EMPNO);
> OCIDefineByName($stmt,"ENAME",&$ENAME);
>
> OCIBindByName($stmt,":empname",&$empname,32);
> $empname="SMITH";
>
> OCIExecute($stmt);
> if (OCIFetch($stmt)){
> echo "Found record!\n";
> echo "$EMPNO $ENAME\n";
> }else {
> echo "No record Found!\n";
> };
> OCIFreeStatement($stmt);
>
--
Thies C. Arntzen "One Big-Mac, Small Fries and a Coke!"
Digital Collections Phone +49 40 235350 Fax +49 40 23535180
Hammerbrookstr. 93 20097 Hamburg / Germany