On Nov 30, 2005, at 3:35 PM, <operationsengineer1(at)yahoo(dot)com>
> i have the following code...
> // start
> $db = &ADONewConnection('postgres');
> $db ->
> // $db -> debug=true;
> $customer_name =
> $customer_id = $db->getone("select
> $sql_insert = <<<_EOSQL
> INSERT INTO t_customer (customer_id,
> customer_name, customer_entry_date)
> VALUES (?,?,?)
> $result = $db->Execute($sql_insert,
> array($customer_id, $customer_name,
> //end code
> it produces the following error...
> ERROR: column "customer_id" is of type integer but
> expression is of type boolean HINT: You will need to
> rewrite or cast the expression.
> any ideas?
What's the value of $customer_id before you attempt the insert?
right after $customer_id variable is set, do the following:
echo $customer_id . '<br />';
echo gettype ( $customer_id );
With ADO, a couple of times, I've run into a glitch where bindings
changed types. Haven't taken the time to figure out why. Switching
to autoExecute solves the problem:
$insert_array = array ( 'customer_id' => $db->getone("select nextval
'customer_name' => $form->GetInputValue('customer_name'),
'customer_entry_date' => $db->DBDate(time()))
$result = $db->autoExecute ( 't_customer',
Most likely, the reason it works for me is that I cleaned up my error
when switching to the autoExecute method.
In response to
- Error at 2005-11-30 21:35:46 from operationsengineer1
- Re: Error at 2005-12-01 01:00:02 from operationsengineer1
- Re: Error at 2005-12-01 01:12:03 from operationsengineer1
pgsql-novice by date
|Next:||From: P G||Date: 2005-12-01 00:39:51|
|Subject: ODBC driver is broken|
|Previous:||From: Marcus Engene||Date: 2005-11-30 23:37:36|
|Subject: Re: Combinatorial problem|