IDAX.EXPORT_MODEL - 匯出模型

您可以使用此儲存程序來匯出模型,以讓它們可以匯入至另一個資料庫。

授權

陳述式的授權 ID 所持有的專用權必須至少包含下列其中一項權限:

  • DATAACCESS 權限
  • 所有匯出之模型內所有表格的 SELECT 專用權。
    註: 若要使用 acl 參數,陳述式的授權 ID 也必須具有下列其中一項權限:
    • SECADM
    • DBADM
    • SQLADM
    • ACCESSCTRL
    • DATAACCESS

語法

IDAX.EXPORT_MODEL(in parameter_string varchar(32672))

參數說明

parameter_string
必要的單一字串參數,其中包含以逗點區隔的 <parameter>=<value> 項目配對。
資料類型:VARCHAR(32672)
下列清單顯示參數值:
directory
必要。
匯出之檔案的目標目錄的絕對路徑。
此目錄必須已存在.
請考慮對匯出的檔案使用專用目錄,甚至是暫存目錄。在發生失敗資料庫處理程序的情況下,使用此目錄可以輕鬆地清除所留下來的任何中間檔。
name
必要。
匯出之檔案的檔名。
acl
選用。
指定是否要將模型專用權(存取控制清單)包括在匯出之檔案中。
預設值:false
all
選用。
指定是否要匯出所有綱目的模型。依預設,只會匯出現行綱目的模型。
註: 如果您將 all 參數設為 true,就無法使用 schema 參數。
預設值:false
log
選用。
指定是否要寫入日誌檔(使用 .elog 副檔名)。 此日誌檔包含匯出作業所跳過之任何模型的成功匯出模型及錯誤訊息的清單。
預設值:false
model
選用。
要匯出的模型名稱。
使用分號來區隔多個模型名稱。如果有任何模型名稱使用大小寫混合格式,您必須以雙引號括住它們。
您可以使用綱目名稱來限定模型名稱,如下所示:<schema>.<model>。如果您未包含綱目名稱,則此程序會匯出位於現行綱目中的模型。
overwrite
選用。
發生命名衝突時要採取的動作。
如果目標目錄內的檔案名稱與 name 參數指定的名稱相同,依預設,匯出作業會失敗。如果您指定 overwrite=true,則會先刪除現有檔案,然後再將匯出的檔案寫入至目標目錄。
預設值:false
resume
選用。
指定 EXPORT_MODEL 程序無法匯出模型時是否要停止。依預設,會跳過無法匯出的所有模型,且匯出作業會繼續。
預設值:true
schema
選用。
指定要從中匯出其模型的綱目。
註: 如果 all 參數設為 true,則您無法指定 schema 參數。
預設值:現行綱目
其中
選用。
過濾要匯出之模型的子句。您可以利用 WHERE 子句來過濾 LIST_MODELS 程序所顯示的任何模型。

傳回的資訊

EXPORT_MODEL 程序會傳回結果集,其中含有所有順利匯出之模型的名稱。如果 resume 參數設為 true,則結果集也會包括所有已跳過之模型的名稱和隨附的錯誤訊息(使用者沒有匯出專用權的所有模型除外)。

範例

  • 下列範例會將現行綱目的所有模型匯出至 /tmp/foo.mdl
    call idax.export_model('directory=/tmp, name=foo')
  • 下列範例會將 SAMPLE 綱目的所有模型匯出至 /tmp/foo.mdl
    
    call idax.export_model('schema=sample, directory=/tmp, name=foo')
  • 下列範例會將所有綱目的所有模型匯出至 /tmp/foo.mdl
    call idax.export_model('all=true, directory=/tmp, name=foo')
  • 下列範例會將現行綱目的模型 M1 及 M2 匯出至 /tmp/foo.mdl
    call idax.export_model('model=sample.m1;test.m2, directory=/tmp, name=foo')
  • 下列範例會將現行綱目的模型 M1 及 M2 匯出至 /tmp/foo.mdl
    call idax.export_model('model=m1;m2, directory=/tmp, name=foo')
  • 下列範例會將模型 SAMPLE.M1 及 TEST.M2 匯出至 /tmp/foo.mdl
    call idax.export_model('model=sample.m1;test.m2, directory=/tmp, name=foo')
  • 下列範例會將現行綱目的模型 M1 及現行綱目中模型名稱開頭為 "T" 的所有模型匯出至 /tmp/foo.mdl
    call idax.export_model('model=m1, where=modelname like ''T%'', di-rectory=/tmp, name=foo')
  • 下列範例會將 SAMPLE 綱目中模型名稱開頭為 "T" 的模型匯出至 /tmp/foo.mdl
    call idax.export_model('schema=sample, where=modelname like ''T%'', directory=/tmp, name=foo')