20 Mayıs 2013 Pazartesi

ORACLE SQL (AYIN/HAFTANIN İLK & SON GÜNÜ)


AYIN İLK GÜNÜ : Ay bazında Trunc fonksiyonunu kullanabiliriz
SELECT TRUNC(sysdate, 'MM') FROM dual
AYIN SON GÜNÜ : Hazır fonskiyon yazmış adamlar kullan diye ;
SELECT LAST_DAY(sysdate) FROM dual
HAFTANIN İLK GÜNÜ : Ay bazında Trunc fonksiyonunu kullanabiliriz
SELECT TO_CHAR(sysdate - (TO_CHAR(sysdate, 'D')-1),'dd.MM.yyyy') AS PAZARTESI
FROM dual
HAFTANIN SON GÜNÜ : Hazır fonskiyon yazmış adamlar kullan diye ;
SELECT TO_CHAR(sysdate - (TO_CHAR(sysdate, 'D')) + 7 , 'dd.MM.yyyy') AS PAZAR
FROM dual

Oracle DB Tablo ve Fonksiyon Yetkilendirme


Fonksiyon yetkilendirmesi….
GRANT EXECUTE ON [FONKSİYON ADI ] TO [KULLANICI_KODU];   /*  FONSİYONLARA YETKI VERMEK İÇİN */

Tablo yetki vermek için kullanılan kod

GRANT SELECT ON [TABLO_ADI] TO [KULLANICI_KODU];

To grant the SELECT privilege on table t to the authorization IDs maria and harry, use the following syntax:
GRANT SELECT ON TABLE t TO maria,harry
To grant the UPDATE and TRIGGER privileges on table t to the authorization IDs anita and zhi, use the following syntax:
GRANT UPDATE, TRIGGER ON TABLE t TO anita,zhi
To grant the SELECT privilege on table s.v to all users, use the following syntax:
GRANT SELECT ON TABLE s.v to PUBLIC
To grant the EXECUTE privilege on procedure p to the authorization ID george, use the following syntax:
GRANT EXECUTE ON PROCEDURE p TO george
To grant the role purchases_reader_role to the authorization IDs george and maria, use the following syntax:
GRANT purchases_reader_role TO george,maria
To grant the SELECT privilege on table t to the role purchases_reader_role, use the following syntax:
GRANT SELECT ON TABLE t TO purchases_reader_role
To grant the USAGE privilege on the sequence generator order_id to the role sales_role, use the following syntax:
GRANT USAGE ON SEQUENCE order_id TO sales_role;
To grant the USAGE privilege on the user-defined type price to the role finance_role, use the following syntax:
GRANT USAGE ON TYPE price TO finance_role;

Oracle DB – SQL Veri sonunda ve başındaki boşlukların silinmesi


update ser_crm_musteri set FIRMA_UNVANI = RTRIM(FIRMA_UNVANI)
where FIRMA_UNVANI LIKE ‘%   %’

both. If no [remstr] is specified, white spaces are removed.
LTRIM(str): Removes all white spaces from the beginning of the string.
RTRIM(str): Removes all white spaces at the end of the string.
Example 1:
SELECT TRIM(‘   Sample   ’);
Result:
‘Sample’
Example 2:
SELECT LTRIM(‘   Sample   ’);
Result:
‘Sample   ’
Example 3:
SELECT RTRIM(‘   Sample   ’);
Result:
‘   Sample’

css3 Column Count


div
{
-moz-column-count:3; /* Firefox */
-webkit-column-count:3; /* Safari and Chrome */
column-count:3
}
Here is what it looks like in the browser.

Jasper Repor Log dosyası oluşturma


* log4j.properties adında bir dosya oluşturun (ireport/etc),:

dosya içeriği :
#
log4j.appender.fileout=org.apache.log4j.RollingFileAppender log4j.appender.fileout.File=C:/tmp/iReport.log log4j.appender.fileout.MaxFileSize=1024KB log4j.appender.fileout.MaxBackupIndex=1 log4j.appender.fileout.layout=org.apache.log4j.PatternLayout log4j.appender.fileout.layout.conversionPattern=%d{ABSOLUTE} %5p %c{1},%t:%L - %m%n log4j.rootLogger=warn, fileout log4j.logger.net.sf.jasperreports.engine.query=debug

#

* c:/tmp klasörü oluşturun

*  ireport/etc/ireportpro.conf dosya içerğinde düzenleme yaparak default_options parameteresini aşağıdaki düzenlemeleri yapın:

-J-Dlog4j.configuration=file:/E:/Server/Server451/ireport/etc/log4j.proper ties

default_options="-J-Xms24m -J-Xmx512m

-J-Dorg.netbeans.ProxyClassLoader.level=1000 -J-XX:MaxPermSize=256m
-J-Dlog4j.configuration=file:/E:/Server/Server451/ireport/etc/log4j.proper
ties"

iReport restart ettikten sonra tmp klasöründe rapor görüntülemeyi çalıtırdığınızda log dosyası oluşacaktır.

16 Kasım 2011 Çarşamba

Nükteler...

Eğer Sen de, Allah’a İnanarak;
Hayatın güçlüklerine katlanabilecek kadar inanç,
Geleceğin daha iyi olacağına inanacak kadar ümit,
Doğru bildiklerin için mücadele edebilecek kadar cesaret,
Topluma, ailene, İslam'a faydalı olabilecek kadar sağlık,
İhtiyaçlarına yetebilecek, zekâtını verebilecek kadar para,
Başkalarının daima iyi yönlerini görebilecek göz,
Çevrenizdeki insanlara yardım eli uzatacak kadar cömert,
İnsanlardan karşılık beklemeden yapabileceğin iyilik,
Hayatın zorluklarına karşı hayatı ve insanları kuşatacak sevgi,
Yastık kadar yumuşak ve rahat bir vicdan,
Dili, belini, kalbini, keseni ve gözünü haramdan saklayabilecek irade,
Gördüklerinin, duyduklarının düzelmesini bekleyebilecek kadar sabır,
Günahlarını, noksanlarını itiraf edebilecek kadar fazilet,
En kötü halinde bile Allah'tan razı olabilecek kadar şükür varsa, Sen mutlusun…

Develeri Kalbime Bağlamam

Biri İmam-ı Azam'a gelerek: "Yâ İmam, ben namazlarımı huşu içerisinde kılamıyorum.
Namazda iken develerimi otlatıyor, onlarla ilgileniyorum. Oysa siz benden daha zenginsiniz.
Peki siz ibadet zevkine nasıl erişiyor, ibadetlerinizi huşu içerisinde nasıl yapıyorsunuz?" diye sormuş.
İmam-ı Azam Ebu Hanife Hazretleri şöyle cevap vermişler:
"Ben develerimi kalbime bağlamam ki; ahıra bağlarım..."

Boynuz-Akıl

İmâm-ı Azam Hazretleri, bir gün kendisine doğru gelmekte olan bir hayvana yol verip kenara çekilmiş. Orada bulunanlar Ebu Hanife'ye niye kenara çekildiğini sorduklarında ondan şu cevabı almışlar: "Onun boynuzları var, benim ise aklım."

SQL Komutları

DISTINCT: Birbirinin ayni olan satirlarin listelenmemesi için bu ifade kullanilir
“select distinct uyeadi from uyeler”
BETWEEN: Kosul belirtirken iki deger arasini belirtmek için kullanilir. Örnek:
Yasi 30 ile 40 arasindaki isçilerin kayitlarini listelemek için
“select * from uyeler where yas between 30 and 40″
LIKE: Eger aradigimiz kayitin bulunmasi için tam bir karsilastirma yapamiyorsak
“select * from uyeler where uyeadi like ’%a’”
IN: Kosul belirtirken kullaniriz. Mesela ismi netrobin, ali veya mehmet olan isçilerin
bilgilerini listelemek için.
“select * from uyeler where uyeadi in (’netrobin’,’ali’,’mehmet’ )”
SUM: Seçilen degerlerin toplamini bulur. Isçilerin aldigi toplam ücreti görmek için
“select sum(ucret ) from uyeler”

MAX, MIN, AVG: Verilen degerin en büyügünü, en küçügünü ve ortalamasini bulur.
MAX en büyük degeri, MIN en küçük degeri, AVG ise seçilen degerlerin ortalmasini bulur.
“select MAX(UCRET ), MIN(UCRET ), AVG(UCRET ) from uyeler where tarih>’01.01.1999’”

ORDER BY ASC: Tablodan seçtigimiz kayitlari alfabetik siralamak için kullanilir.
“select * from uyeler order by asc”

ORDER BY DESC: Tablodan seçtigimiz kayitlari son kayıt sırasına göre siralamak için kullanilir.
“select * from uyeler order by desc”
GROUP BY: Genelde istatistik amaçlar için kullanilir. Mesela hangi tarihte kaç isçinin ise
alindigini bulmak için.
ALIAS: Genelde tablonun veya kolonun adını başka bir şeymiş gibi değişirebiliriz.
Uyeler tablosundaki uyeadi kolonunun adını isim yaptık yani isim olarak çağırabiliriz.
“SELECT uyeadi AS isim FROM uyeler”
JOIN: Bazen iki yada daha fazla tablodan veri cekmemiz gerekebilir, bu gibi durumlarda bu
methodu kullanırız.
Birbiri ile ilişkilendirilmiş iki tablomuz var biri uyeler diğeride detaylar olsun.
İki tablodanda aynı anda sorgulama veya veri çekeceğiz. Uyeler tablosunda id=1 ise detaylar
tablosundaki karşılğı ise uyeno=1 olarak yapıyoruz.
“SELECT * FROM uyeler,detaylar WHERE uyeler.id=detaylar.uyeno”
INNER JOIN OLARAK
“SELECT * FROM uyeler INNER JOİN detaylar ON uyeler.id=detaylar.uyeno”
LEFT JOIN OLARAK
“SELECT * FROM uyeler LEFT JOİN detaylar ON uyeler.id=detaylar.uyeno”
UNION ve UNION ALL : Join methoduna benzer ama sadece aynı kolonlara sahip tabloları
birbirine bağlar. Uyeler ve Detylar tablosundaki uyeadlarını sorgular.
“Select uyeadi from uyeler UNION Select uyeadi from detaylar”
Sadece UNION kullanırsak iki tabloa aynı isimler olsa bile tekrarlar.
UNION ALL kullanırsak iki tabloda aynı isimler olsa bile sadece tekini sorgular.
“Select uyeadi from uyeler UNION ALL Select uyeadi from detaylar”

SQL FONKSİYONLARI

sql kendi içinde bir cok fonksiyonu barındırır, bunlar sayım ve hesaplama için kullanılabilir.
Fonksiyon sözdizimi kuruluşu;
SELECT fonksiyon(kolon ) FROM tablo
Fonksiyon tipleri;
sql fonksiyonları birkaç temel tip ve kategoriye sahiptir. Temel fonksiyon tipleri:
++ Aggregate (birleşik degerli ) fonksiyonlar
++ Scalar (tekil degerli ) fonksiyonlar
Aggregate (birleşik degerli ) fonksiyonlar
Bu tip fonksiyonlar birçok deger ile çalışır ama sonucu tek bir degerdir.
Bu fonksiyonların MS Access e uygun olanları:
AVG(kolon ): girilen kolondaki sayıların aritmetik ortalama degerini geri yollar
COUNT(kolon ): Boş degerler haric, girilen kolondaki satır sayısını yollar
COUNT(* ): Verilen tablodaki satır sayısını yollar
FIRST(kolon ): girilen kolondaki ilk degeri yollar
LAST(kolon ): girilen kolondaki son degeri yollar
MAX(kolon ): girilen kolondaki en yuksek degeri yollar
MIN(kolon ): girilen kolondaki en dusuk degeri yollar
STDEV(kolon ): girilen kolondaki basit istatiksel standard sapma degerini yollar
STDEVP(kolon ): girilen kolondaki nüfus istatiksel standard sapma degerini yollar
SUM(kolon ): girilen kolondaki sayıların toplamını yollar
Bu fonksiyonların sql Server a uygun olanları:
AVG(kolon ): girilen kolondaki sayıların aritmetik ortalama degerini geri yollar
BINARY_CHECKSUM: tablonun verilen satırındaki ikilik tabandaki checksum degerini yollar
CHECKSUM: tablonun verilen satırındaki checksum degerini yollar
CHECKSUM_AGG: boş degerler haricindeki verilerin checksum degerini yollar
COUNT(kolon ): Boş degerler haric, girilen kolondaki satır sayısını yollar
COUNT(* ): Verilen tablodaki satır sayısını yollar
COUNT(DISTINCT kolon ): Verilen tablodaki satır sayısını yollar, fakat cift veri bulunan satırları bir defa sayar
FIRST(kolon ): girilen kolondaki ilk degeri yollar
LAST(kolon ): girilen kolondaki son degeri yollar
MAX(kolon ): girilen kolondaki en yuksek degeri yollar
MIN(kolon ): girilen kolondaki en dusuk degeri yollar
STDEV(kolon ): girilen kolondaki basit istatiksel standard sapma degerini yollar
STDEVP(kolon ): girilen kolondaki nüfus istatiksel standard sapma degerini yollar
SUM(kolon ): girilen kolondaki sayıların toplamını yollar
Scalar (tekil degerli ) fonksiyonlar
Girilen degere gore bir deger ile calısır ve sonuc olarak bir deger yollar.
Bu fonksiyonların MS Access e uygun olanları:
UCASE(c ): bolgedeki karakterlerin hepsini buyuk yapar
LCASE(c ): bolgedeki karakterlerin hepsini kucuk yapar
MID(c,start[,end] ): yazı alanından karakterleri calıstırır
INSTR(c ): yazı alanından karakterleri gosterir
LEFT(c,karakterNumarasi ): text alanının girilen sayıya kadar olan kısmını yollar (soldan sayar )
RIGHT(c,number_of_char ): text alanının girilen sayıya kadar olan kısmını yollar (sagdan sayar )
ROUND(c,hassasiyet ): sayı alanını verilen hassasiyete gore yuvarlar
MOD(x,y ): bolme işleminde kalanı gosterir (mod işlemi yapar )
NOW( ): o anki sistem zamanını gosterir
FORMAT(c,format ): alanın gosterim biçimini degiştirir
DATEDIFF(d,birinciTarih,ikinciTarih ): tarih hesaplarını yapmak için kullanılı