0

Oracle Veritabanından Ftp Bağlantısı Yapmak.

Posted by Gökhan Şahin on Feb 18, 2011 in Database, Oracle, Yazılım

Oracle veritabanından ftp bağlantısı yapmak için öncelikle aşağıdaki linkten sql dosyasını indiriyoruz.

Ftp Bağlantı Paket Sql

Aşağıdaki kod ile ftp serverdan ls komutunu çalıştırabilirsiniz. Burada önemli olan p_localpath değişkeninde oracle üzerindeki directory kısmındaki dizinlerden çalıştırdığınız kullanıcının yazma yetkisi olan bir dizin olması gerekmektedir.

declare
p_status VARCHAR2 (32000);
p_error_msg VARCHAR2 (32000);
p_elapsed_time VARCHAR2 (100);
p_remote_path VARCHAR2 (2000);
p_local_path VARCHAR2 (2000);
p_hostname VARCHAR2 (100);
p_username VARCHAR2 (100);
p_password VARCHAR2 (100);
p_files VARCHAR2 (4000);
p_bytes_trans NUMBER;
p_trans_start DATE;
p_trans_end DATE;
lbok BOOLEAN;
p_failed CHAR (1) := 'N';
wfile_thk UTL_FILE.file_type;
wsonuc VARCHAR2 (3999) := '';
vnewline VARCHAR2 (255) := '';
BEGIN

--listeleme sonucunu yazacağı dosya
p_files := 'lst.txt';
lbok :=
ftp_interface.ls (p_localpath => 'ORACL_DİZİNİ',
p_filename => p_files,
p_remotepath => 'listelenecek dizin',
p_username => 'kullanici',
p_password => 'şifre',
p_hostname => 'host',
v_status => p_status,
v_error_message => p_error_msg,
n_bytes_transmitted => p_bytes_trans,
d_trans_start => p_trans_start,
d_trans_end => p_trans_end,
p_port => 21,
p_filetype => 'ASCII'
);

IF lbok = TRUE
THEN
wfile_thk := UTL_FILE.fopen ('ORACL_DİZİNİ', 'lst.txt', 'R');

LOOP
BEGIN
UTL_FILE.get_line (wfile_thk, vnewline);
wsonuc := wsonuc || ',' || vnewline;
EXCEPTION
WHEN OTHERS
THEN
EXIT;
END;
END LOOP;

UTL_FILE.fclose (wfile_thk);
RETURN SUBSTR (wsonuc, 2);

IF p_status <> 'SUCCESS'
THEN
p_failed := 'Y';
END IF;
ELSE
-- DBMS_OUTPUT.put_line (p_error_msg);
p_failed := 'Y';
END IF;
-- DBMS_OUTPUT.put_line ( 'FTP PROCESS FAILED := '|| p_failed);
-- DBMS_OUTPUT.put_line ('FINIS');
END;

Put ve get işlemleri için FTP_INTERFACE paketi içinde methodları bulacaksınız.

 
1

Birden fazla alanı Sql sonucuna göre update etmek.

Posted by Gökhan Şahin on Feb 10, 2011 in Database, Oracle
İşçiler tablosundaki adı,soyadı alanlarını Kişiler tablosundaki kayıtların ad ve soyad bilgisi ile güncellemek için güncellenecek alanlar parantez içinde yazılır eşittir konur ve parantez içinde sql cümlesi yazılır dikkat edilecek konu alan sayılarının aynı olması gerekiyor.
update isciler i set (adi,soyadi)=(select adi,soyadi from kisiler k where k.kisi_id=i.kisi_id)

 
0

Apache Web Server Virtual Directory tanımlama

Posted by Gökhan Şahin on Feb 4, 2011 in Application Server, Yazılım

Apache Web Server üzerinde diskteki bir klasörü sanal dizin olarak tanıtmak için
httpd.conf dosyası içine aşağıdaki örnek gibi ekleme yapılıp http server yeniden başlatılırsa sanal dizin kullanılmaya başlanır.

Alias /urlYolu "/diskteki/kalsorun/yolu"

<Directory “/diskteki/kalsorun/yolu”>

Options Indexes FollowSymLinks MultiViews ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>


Copyright © 2019 Gökhan Şahin All rights reserved. Theme by Laptop Geek.