| Author |
ORA-06550: line 1, column 36: PLS-00103: Encountered the symbol ";"
|
Imran Mirza
Greenhorn
Joined: Oct 15, 2004
Posts: 8
|
|
Following is the code of oracle function:- create or replace function add_constraint(p_pk_table varchar2, p_pk_col_list varchar2, p_fk_table varchar2, p_fk_col_list varchar2 := null) return varchar2 is v_add_statement varchar2(200) := null; v_statement varchar2(4000) := null; v_fk_col_list varchar2(1000) := null; v_datatype varchar2(100) := null; begin if p_fk_col_list is null then select case when atc.data_type like '%CHAR%' then atc.data_type || '(' || atc.data_length || ')' when atc.data_type = 'NUMBER' then atc.data_type || decode(atc.data_precision, null, '', '(' || atc.data_precision || decode(atc.data_scale, null, '', ',' || atc.data_scale) || ')') else atc.data_type end into v_datatype from all_tab_cols atc where table_name = p_pk_table and column_name = p_pk_col_list; v_add_statement := 'alter table ' || p_fk_table || chr(10) || 'add ' || p_pk_col_list || ' ' || v_datatype || ' null'; execute immediate(v_add_statement); v_fk_col_list := p_pk_col_list; else v_fk_col_list := p_fk_col_list; end if; v_statement := 'alter Table ' || p_fk_table || chr(10) || 'add constraint udfk_' || substr(p_fk_table, 1, 12) || '_' || substr(p_pk_table, 1, 12) || ' foreign key (' || v_fk_col_list || ') references ' || p_pk_table || '(' || p_pk_col_list || ')' ; execute immediate (v_statement); return 'Success'; exception when others then return sqlerrm; end; ////////////////////////////// END IF ////////////////////////////////////// Following is the code i am using to call above function try{ cs = conn.prepareCall("{? = call add_constraint(?,?,?}"); cs.registerOutParameter(1,Types.VARCHAR); cs.setString(2,"sampling."+table1); cs.setString(3,Parent_Table_PK); cs.setString(4,table2); //cs.setString(5,null); cs.execute(); } catch(Exception e) {System.out.println (e.getMessage());} But when i am going to execute the function, It is giving me following error:- ORA-06550: line 1, column 36: PLS-00103: Encountered the symbol ";" when expecting one of the following: . ( ) , * @ % & | = - + < / > at in is mod not range rem => .. <> or != or ~= >= <= <> and or like between || indicator The symbol ")" was substituted for ";" to continue. Please help me out. I have already wasted alot of time. Thanks in advance. Regards, Imran Mirza
|
 |
Bear Bibeault
Author and ninkuma
Marshal
Joined: Jan 10, 2002
Posts: 56152
|
|
"juke box", We're pleased to have you here with us on the Ranch, but there are a few rules that need to be followed, and one is that proper names are required. Please take a look at the JavaRanch Naming Policy and adjust your display name to match it. In particular, your display name must be a first and a last name separated by a space character, and must not be obviously fictitious. Thanks! bear Forum Bartender
|
[Smart Questions] [JSP FAQ] [Books by Bear] [Bear's FrontMan] [About Bear]
|
 |
 |
|
|
subject: ORA-06550: line 1, column 36: PLS-00103: Encountered the symbol ";"
|
|
|