All,
 
Never mind, I have just been informed that in Netezza the temp tables
only exist during the session.
 
Thanks.
 
Peter
 
________________________________

From: Loo, Peter # PHX 
Sent: Tuesday, November 28, 2006 7:56 AM
To: DBI-Users
Subject: Not receiving any errors back from DBD::ODBC::VERSION 1.13


Hello,
 
I am simply testing a DBI->connect, $dbh->prepare and $sth->execute for
the following bundled SQL statement.  I am not receiving any errors at
all.  I should have received the following error:
 
Error: ERROR: Relation 'tmp_ppv_store_panel_seq' already exists
(State:HY000, Native Code: 6C)
 
$sqlString = qq{ create temp table tmp_ppv_store_panel_seq as select *
from p_ppv_store_panel_seq ; generate statistics on
tmp_ppv_store_panel_seq; update p_ppv_store_panel_seq set seq_nbr =
seq_nbr + 1 ; begin work; insert into p11_ppv_store_panel (
store_panl_gid, dlvrb_gid, stdy_mth, begin_hist_mth, build_tstmp )
select s.seq_nbr, d.dlvrb_gid, d.cohrt_end_dte, extnd_lkbck_strt_dte,
now() from tmp_ppv_store_panel_seq s full outer join p11_study_atrbs d
on seq_nbr > 0 ; insert into p11_ppv_store_panl_type ( dlvrb_gid,
store_panl_typ_desc, build_store_panl_ind, max_msng_mths, max_msng_days,
qlftn_span_smpl_mth_nbr, qlftn_span_span_mth_nbr, lst_updt_id,
lst_updt_dte ) select dlvrb_gid, 'Useless Filler', 'Y',
mt.max_msng_mths, mt.max_msng_days, mt.qlftn_span_smpl_mth_nbr, case
when round(months_between(cohrt_end_dte,extnd_lkbck_strt_dte)) <= 12
then 12 else round(months_between(cohrt_end_dte,extnd_lkbck_strt_dte))
end, 'ppv_insert_p_ppv_store_panel_typ', now() from p11_study_atrbs dsa
full outer join m_store_panel_thresholds mt on (mt.clnt_id = 'NDC' and
mt.prjct_id = 'PPV') ; commit work };
 
There was nothing in [EMAIL PROTECTED]
 
eval {
  $trgt_dbh = DBI->connect("dbi:ODBC:db01", "userid", "password", {
RaiseError => 1 } );
  $trgt_sth = $trgt_dbh->prepare($sqlString);
  $trgt_sth->execute();
  };
 
if ($@) {
  print "\$@ is: [EMAIL PROTECTED]";
  }
 
Also tried the following and program still exited with no errors.
 
$trgt_dbh = DBI->connect("dbi:ODBC:db01", "userid", "password", {
RaiseError => 1 } );
$trgt_sth = $trgt_dbh->prepare($sqlString) || die "$!\n";
$trgt_sth->execute() || die "$!\n";

Can someone please educate me as to what I might be doing wroing?
 
The version of ODBC I am using is:
 
$ perl -M'DBD::ODBC' -le 'print $DBD::ODBC::VERSION'
1.13
 
Thanking you in advance.
 
Peter

Reply via email to