|
<< İç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ım | Kaynak |
|---|---|
'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.