みなさんこんにちは、
私としては、私としてはDDL sctiptする関数/ p / pとそれを実行すると、
させる
HTMLコード:
function execute_sql
{
db_var="$1"
v_cnt=`sqlplus -s XXXXX/XXXXX@aXXX << ENDSQL | sed -e "s/Connected\.//" -e "/^$/d"
set pagesize 0 feedback off verify off heading off echo off serveroutput on size 10000
whenever sqlerror exit SQL.SQLCODE;
$db_var
commit;
exit ;
ENDSQL`
db_var=""
}
私は間違っているのDDLスクリプトを実行する場合は、その後私はむしろretrunコードとして1キャッチする場合は、スクリプトを実行する関数を介してのDDL午前0投げることよりも私ではない。
せている私は間違っている、のDDL
のINSERTにCBF_CONFIG ( CS_ID 、 CS_NAME 、 FIELD_SEP 、 REC_SEP 、 FIELDS_NUM 、 FTPS_FILE 、 DECSN_FMT_TYPE 、 DECSN_FIELDS 、 DECSN_SCHDL_TYPE 、 DECSN_SCHDL 、 DECSN_TIME 、 DECSN_UNITWS 、 UNIQ_FILE_CONVNS 、 OUTBOX_RETN 、 UPDATE_TIME )の値
( ' MANASMANAS1 ' 、 ' SCORENETHERLANDS ','|','はNULL ' 、 '15 ' 、 ' n 'を、 '標準' 、 'はNULL ' 、 '毎日' 、 'はNULL ' 、 '14 : 00 ' 、 ' n 'を、 'イ' 、 '1 ' 、 SYSDATE ) ;
は、 O / p場合、単純な環境を介して実行sqlplus午前なるとして、次のように
( ' MANASMANAS1 ' 、 ' SCORENETHERLANDS ','|','はNULL ' 、 '15 ' 、 ' n 'を、 '標準' 、 'はNULL ' 、 '毎日' 、 'はNULL ' 、 '14 : 00 ' 、 ' n 'を、 'イ' 、 '1 ' 、 SYSDATE )
*
2行目でエラー:
お知らせメールORA - 12899 :列の値が大きい"はXXXXX " 。 " CBF_CONFIG " 。 " " CS_ID
(実際: 11 、最大: 10 )
しかし、もし私は、上記のシェルの機能を介して通話するんだ
HTMLコード:
insert_sql="INSERT INTO CBF_CONFIG ( CS_ID, CS_NAME, FIELD_SEP, REC_SEP, FIELDS_NUM, FTPS_FILE, DECSN_FMT_TYPE, DECSN_FIELDS, DECSN_SCHDL_TYPE, DECSN_SCHDL, DECSN_TIME, DECSN_UNITWS, UNIQ_FILE_CONVNS, OUTBOX_RETN, UPDATE_TIME ) VALUES
('MANASMANAS1','SCORENETHERLANDS','|','NULL','15','N','STANDARD','NULL','DAILY','NULL','14:00','N','Y','1',SYSDATE) ; "
echo $insert_sql
execute_sql "$insert_sql"
rc=$?
echo "exit code $rc"
その後のrc 0ですが、 v_cnt " 2行目でエラーです:
お知らせメールORA - 12899 :列の値が大きい" CLIFBACONFIG " 。 " CBF_CONFIG " 。 " " CS_ID
(実際: 11 、最大: 10 ) "
なぜ私の質問をキャッチすることはないです
SQL.SQLCODE にもかかわらずでは、行が関数
いつがSQLError出口SQL.SQLCODE...
どんな提案を改善するため、エラー...........セッション引く