10.3 Dosya dahil etme

<< İçindekileri Görüntülemek İçin Tıklayın >>

Yer:  Teknik Kılavuzlar > IVEDI SQL Kullanıcı Kılavuzu > 10. Önişlemci >

10.3 Dosya dahil etme

#INCLUDE [IF_EXISTS] '<dosya adı>'

Yol, dahil eden dosyaya göre çözülür; ${APPDIR} gibi yer tutucular açılır. Yuvalama derinliği sınırı 256'dır; aşıldığında hata iletisi dosya/satır izini verir. Dosya paylaşımlı okunur, yani bir dosya (bir #IFNDEF korumasıyla) kendini dahil edebilir. IF_EXISTS ile eksik dosya hataya değil bilgi iletisine düşer.

Dosyanın kaynağı yolun önekiyle seçilir:

YazımKaynak
'client:<yol>'İstemcinin dosya sistemi. Motor dosyayı, betiği gönderen /ivedi oturumundan aynı bağlantı üzerinden ister (msql karşılar).
'server:<yol>'Motorun koştuğu makinenin dosya sistemi.
'<yol>' (öneksiz)İçinde bulunduğu dosyanın kaynağını miras alır: istemciden gelen bir betiğin göreli #include'ları istemciden, sunucudaki bir betiğinkiler sunucudan okunur.

msql bir betiği client:<mutlak yol> kaynak adıyla gönderir; bu yüzden betik dosyasının yanındaki dosyalar hiçbir değişiklik gerekmeden istemci tarafında bulunur ve hata iletilerindeki file: satırı istemcideki yolu gösterir. Aynı kural ALTER DATABASE … SET STARTUP SCRIPT FROM FILE için de geçerlidir. Çalışma zamanında açılan dosyalar bu kuralın dışındadır: öneksiz yolları her zaman sunucunun yollarıdır. Seviye paketleri açık 'client:<yol>' önekiyle istemcide kalabilir: UPGRADE LEVEL … FROM 'client:…' paketi istemciden okur, EXPORT LEVEL … TO 'client:…' istemciye yazar (msql var olan dosyanın üstüne yazmaz); motor paketi sunucuda geçici bir dizine alır ve iş bitince siler. BACKUP TO ve CREATE EXTERNAL TABLE yalnız sunucu yolu alır.