30.07.2011

Oracle'de püf noktalar

Oracle'de sql kasmak isteyenler için bir kaç püf noktaya değinecem ; oracle da veri tipleri uyuşmadığından null,null diye başlarsıniz.

from all_tables dersiniz information_schema.tables karşılığıdır

from kullanmadan select çekemezsin

all_tab_columns < bu da information_schema.columns karşılığı

table_name column_name kolon adları aynı


union select version from all_Tables veya union select user from all_Tables

diye deneme yapcaksıniz geri döndürüyosa char kolonu tutturmuşsunuz

yoksa blind kasarsıniz sonra tabloları kullanıcına göre çekmek istiyosaniz where owner=user diceksiniz

all_tables tan table_name çekersen yetki olan tüm tablo adlarını verir

ama sonra onları doğrudan from tablo şeklinde çekebilmeniz için çektiğiniz tablonun kendi kullanıcı adında olması lazm

yoksa owner ını da çekip başına misal from KULLANICI.TABLO yazarsıniz bi de oracle da tüm tablo kolon adları büyük harftir

sistem tabloları hariç

Oracle'de hex kullanılmaz chr (ascii tablosu) kullanilir


birleştirme yapmak için

mysql de concat()
mssql de +
oracle da ||
postgre de ||
kullanılır
birleştirme yapmak için
misal
union select AD||'|SOYAD from OGRENCI
misal
322 union select null,null,AD||' '||SOYAD||'|MESLEK||'|SIFRE,null,null,null,null,null,null from DURUM.PERSONEL where AD='YASİR'

mesela yazıyı charlayıp yollayacaksanız

char(42)+char(352)


bu şekilde ama url den get ile gönderdiğinde + lar boşluk algılanır o yüzden

char(42)%2bchar(352)

şeklinde yazacaksıniz %2b + nın karşılığıdır

Bügünlük bu kadar yeter Bir dahaki sefere de oracle'de like kullanımını anlatacam.

Agd_Scorp'da burda teşşekürlerimi iletiyorum.

1 yorum:

Yorumunuz kayıt edilmiştir en kısa sürede kontrol edilip onaylanacaktır.