DBI: Array bind is supported only for ORA_TABLE types.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • mtanquary
    New Member
    • Mar 2008
    • 1

    DBI: Array bind is supported only for ORA_TABLE types.

    I have a script that runs in my DEV and PROD environment, but for some reason on my TEST server, I am getting the following error:

    Array bind is supported only for ORA_TABLE types. Unable to bind ':p1'. at ./xmlimport.pl line 973.
    Issuing rollback() for database handle being DESTROY'd without explicit disconnect().
    The script's function is to read from an XML file and load the data to an Oracle table. I believe this error is actually caused by the environment, not sure what yet, but I have checked the DBI and DBD version against our PROD server and they are matched.

    I am running the script against the exact same XML file to rule out the XML file itself. The script on TEST is the same as on PROD.

    My main question is if DBI doesn't think that my bind is against an ORA_TABLE type, how can I find out what it thinks I'm trying to bind to? Also, does anyone have a clue as to what I can do to debug this. I have run through the debugger and done everything I know how to do, but I'm at a loss for why this error would happen.

    I'm going to include the relevant (hopefully) lines of code below.

    Line 973 is the line that has $event_id right after $ir_insert_st->execute(:

    Code:
    my $INVITATION_REQUESTS_INSERT_ST01 =
    
    "
    insert into invitation_requests
    
    	(
    
    		EVENT_ID,
    
    		EVENT_TYPE_DESC,
    
    		EVENT_START_DATE,
    
    		EVENT_STATUS_TYPE,
    
    		EVENT_VENUE,
    
    		EVENT_VENUE_ADDR1,
    
    		EVENT_VENUE_ADDR2,
    
    		EVENT_VENUE_ADDR3,
    
    		EVENT_VENUE_CITY,
    
    		EVENT_VENUE_STATE,
    
    		EVENT_VENUE_ZIP,
    
    		EVENT_OWNER_ID,
    
    		EVENT_OWNER_PREFIX,
    
    		EVENT_OWNER_FIRST_NAME,
    
    		EVENT_OWNER_MIDDLE_NAME, 
    
    		EVENT_OWNER_LAST_NAME,
    
    		EVENT_OWNER_SUFFIX,
    
    		EVENT_OWNER_PHONE,
    
    		EVENT_OWNER_RBG, 
    
    		EVENT_OWNER_REGION,
    
    		EVENT_OWNER_DISTRICT,
    
    		EVENT_OWNER_TERRITORY,
    
    		EVENT_DELIVERY_SEQ,
    
    		EVENT_DELIVERY_STATUS,
    
    		EVENT_TALK_TITLE_ID,
    
    		EVENT_TALK_TITLE,
    
    		EVENT_TOPIC_ID,
    
    		EVENT_TOPIC_NAME,
    
    		EVENT_SPEAKER_ID, 
    
    		EVENT_SPEAKER_PREFIX,
    
    		EVENT_SPEAKER_FIRST_NAME,
    
    		EVENT_SPEAKER_MIDDLE_NAME  ,
    
    		EVENT_SPEAKER_LAST_NAME,
    
    		EVENT_SPEAKER_SUFFIX,
    
    		EVENT_SPEAKER_PROF_DESIG, 
    
    		EVENT_SPEAKER_BIO,
    
    		EVENT_SPEAKER_ADDR1,
    
    		EVENT_SPEAKER_ADDR2,
    
    		EVENT_SPEAKER_ADDR3,
    
    		EVENT_SPEAKER_CITY,
    
    		EVENT_SPEAKER_STATE,
    
    		EVENT_SPEAKER_ZIP,
    
    		EVENT_JDE_NUMBER,
    
    		EVENT_SUB_LEDGER,
    
    		EVENT_PROCESS_TS 
    
    	)
    
    	values
    
    	(
    
    		?, ?, to_date(?, 'YYYY-MM-DD HH24:MI:SS'), ?, ?, ?, ?, ?, ?, ?,
    
    		?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
    
    		?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
    
    		?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
    
    		?, ?, ?, ?, SYSDATE
    
    	)
    
    ";
    	my $ir_insert_st			= $db_handle->prepare($INVITATION_REQUESTS_INSERT_ST01);
    
    /*RETRIEVES THE DATA FROM XML*/
    
                                                  $ir_insert_st->execute(
    
    				$event_id,
    
    				$event_type_desc,
    
    				"$event_start_date $event_start_time",
    
    				$event_status_type,
    
    				$event_venue,
    
    				$event_venue_addr1,
    
    				$event_venue_addr2,
    
    				$event_venue_addr3,
    
    				$event_venue_city,
    
    				$event_venue_state,
    
    				$event_venue_zip,
    
    				$event_owner_id,
    
    				$event_owner_prefix,
    
    				$event_owner_first_name,
    
    				$event_owner_middle_name,
    
    				$event_owner_last_name,
    
    				$event_owner_suffix,
    
    				$event_owner_phone,
    
    				$event_owner_rbg,
    
    				$event_owner_region,
    
    				$event_owner_district,
    
    				$event_owner_territory,
    
    				$event_delivery_seq,
    
    				$event_delivery_status,
    
    				$event_talk_title_id,
    
    				$event_talk_title,
    
    				$event_topic_id,
    
    				$event_topic_name,
    
    				$event_speaker_id,
    
    				$event_speaker_prefix,
    
    				$event_speaker_first_name,
    
    				$event_speaker_middle_name,
    
    				$event_speaker_last_name,
    
    				$event_speaker_suffix,
    
    				$event_speaker_prof_desig,
    
    				$event_speaker_bio,
    
    				$event_speaker_addr1,
    
    				$event_speaker_addr2,
    
    				$event_speaker_addr3,
    
    				$event_speaker_city,
    
    				$event_speaker_state,
    
    				$event_speaker_zip,
    
    				$event_jde_number,
    
    				$event_sub_ledger
    
    			);
  • KevinADC
    Recognized Expert Specialist
    • Jan 2007
    • 4092

    #2
    You might want to take this question over to www.perlmonks.c om

    Comment

    Working...