2016-04-05 16 views
0

Hi aşağıdaki 'DIRECTORY' de ben oracle şema yenilemek için bir komut dosyası oluşturma. Şemayı yedeklemeye çalışırken, aşağıdaki hatayı almaya devam ettim.LRM-00116: sözdizimi hatası '='

Her yeri aradım ve hiç kimse bu aynı tam hatayı yaşıyor gibi görünüyor. Herhangi bir tavsiye? Tamam nihayet benim hataydı öğrenmek

#!/bin/ksh 
systemPwd=pwd 
srcSID=src 
tarSID=tar 
srcSCHEMA=A 
tarSCHEMA=A 

export_source_schema(){ 
echo 
echo ------------------------- 
echo "EXPORTING SOURCE SCHEMA" 
echo ------------------------- 
expdp system/${systemPwd}@${srcSID} SCHEMAS=${srcSCHEMA} DIRECTORY=EXP_IMP_DIR DUMPFILE=${taskNo}_${srcSID}_${srcSCHEMA}_export.dmp LOGFILE=${taskNo}_${srcSID}_${srcSCHEMA}_export.log 
} 

    ./export_schema.ksh 


    ------------------------- 
    EXPORTING SOURCE SCHEMA 
    ------------------------- 
    LRM-00116: syntax error at 'DIRECTORY' following '=' 

    ./export_schema.ksh[502]: break: cannot break 
+0

güzel küçük bir sorudur. Orijinal kodunuza bakarak, '$ srcSCHEMA' doğru şekilde yazıldığından ve bir boşluktan fazlasıyla dolu mu? –

+0

Sorunu buldum – user6027133

cevap

0

, ben girişi o isteyerek bir değişkeni batıyordu - Açıkçası yanlış değil ama hatam girdi kullanıcıya sormak için ayrı bir işlevi yapılmış oldu. Yani bu, kullanıcı bir değişken olan bir değer girdiğinde ve bu değişkenin kapsamı yerel olarak bu işlev için kaldığında, diğer işlevler için kullanılamayacağı anlamına gelir. Kullanıcıyı bir işlevden çıkardıktan sonra bu sorun giderir. Sen yapılmış