db2 üzerine aşağıdaki gibi bir sorgu kullanarak kolon bilgilerini sorgulayabilirsiniz. Özellikle dökümantasyon yaparken kullanışlı bir script olacaktır diye düşünüyorum.
Aşağıdaki script ile kolon isimlerini, kolon data tiplerini, uzunluk ve scale, null değer alma bilgilerini select edebilirsiniz.
select
c.colname as "Column Name",
c.typename as "Type Name",
c.length as "Length",
c.scale as "Scale",
c.nulls as "NULL?"
from syscat.columns c
where c.tabname LIKE 'TABLO_ADI'
and tabschema= 'SEMA_ADI';
Sorguyu kendi isteklerinize göre şekillendirmek için select * from syscat.columns; cümlesi ile tüm bilgilere göz atıp istediğiniz filtreyi uygulayabilirsiniz.
Kendi kullandığım bazı notları hızlı erişim sağlayabilmek için bu sayfaya ekliyorum, bilgi paylaştıkça güzeldir (:
21 Temmuz 2009 Salı
10 Temmuz 2009 Cuma
Oracle da kolonlar üzerinde default değer tanımlamak.
Kullandığımız bazı tablolarda yaptığımız işin gerekliliğine göre kolonlarda default değer kullanmamız gerekebilir. Özellikle tablo üzerinde kayıdın insert edildiği tarihi alan bir kolon olması tablo üzerinde history tutmak için çok faydalı olabilir.
Böyle bir yapı normalde insert edildikten sonra bir trigger tetiklenerek de yapılabilirdi fakat daha kısa ve kolay bir çözümü default değerleri kullanmak.
Örneğin bir mesajlar tablomuz olsun ve içerisinde mesaj_id, gonderen_id, alan_id, konu, mesaj_icerigi, gonderme_tarihi alanlarımız olsun.
DROP TABLE MESAJLAR CASCADE CONSTRAINTS;
CREATE TABLE MESAJLAR
(
MESAJ_ID NUMBER NOT NULL,
GONDEREN_ID NUMBER NOT NULL,
ALAN_ID NUMBER NOT NULL,
KONU VARCHAR2(50 BYTE) NOT NULL,
MESAJ_ICERIGI VARCHAR2(200 BYTE) NOT NULL,
GONDERME_TARIHI DATE DEFAULT sysdate NOT NULL
)
Burada gonderme_tarihi alanına eklediğimiz default değer sayesinde tabloya her kayıt yapıldığında sistem zamanı default olarak yazılacaktır.
Oracle, assigning default values to columns example code.
Böyle bir yapı normalde insert edildikten sonra bir trigger tetiklenerek de yapılabilirdi fakat daha kısa ve kolay bir çözümü default değerleri kullanmak.
Örneğin bir mesajlar tablomuz olsun ve içerisinde mesaj_id, gonderen_id, alan_id, konu, mesaj_icerigi, gonderme_tarihi alanlarımız olsun.
DROP TABLE MESAJLAR CASCADE CONSTRAINTS;
CREATE TABLE MESAJLAR
(
MESAJ_ID NUMBER NOT NULL,
GONDEREN_ID NUMBER NOT NULL,
ALAN_ID NUMBER NOT NULL,
KONU VARCHAR2(50 BYTE) NOT NULL,
MESAJ_ICERIGI VARCHAR2(200 BYTE) NOT NULL,
GONDERME_TARIHI DATE DEFAULT sysdate NOT NULL
)
Burada gonderme_tarihi alanına eklediğimiz default değer sayesinde tabloya her kayıt yapıldığında sistem zamanı default olarak yazılacaktır.
Oracle, assigning default values to columns example code.
Kaydol:
Kayıtlar (Atom)
Popüler Yayınlar
-
NVARCHAR ve VARCHAR çok fazla kullandığımız veri tipleri arasında, fakat geçenlerde bir sohbet sırasında iki veri tipi arasındaki farkları t...
-
Kullandığımız Oracle versiyonu bazı özelliklerin kullanılıp kullanılmması açısından önemli olabilir, yeni eklenen özellikleri eski versiyonl...
-
Üzerlerinde parent-child ilişkisi tanımlanmış olan tablolar sayesinde tablolardaki verinin bütünlüğünü korumak daha kolay olabilir, örneğin ...
-
DDL Data Definition Language (DDL) cümleleri veritabanı veya şema yapıları tanımlamak için kullanılırlar. Örneğin: • CREATE - veritabanında ...
-
Tablo üzerinde bir alandaki duplicate, çiftleyen, tekrarlayan, mükerrer kayıtları bulmak ve o kayıt için kaç tane tekrarlayan olduğunu liste...
-
Soru: Oracle da string bir değerin alfanumerik karakterler içerip içermediğini nasıl test ederiz? Cevap: Bir stringi alfanumerik karakterl...
-
Merhaba, Bu yazı sql plus marifetlerini kullanarak iki veritabanı arasında veri kopyalama işlemini nasıl yapabileceğiniz hakkında bilgiler i...
-
Oracle/PLSQL: Oracle Sistem Tabloları Bütün gerçekten ilişkisel olan sistemler sistem bilgilerini saklayan alanlara sahiptir. Sistem ...
-
Gittikçe büyüyen ve data yükü artan tablolar üzerinde sorgu çalıştırmak veya tablo bakımına ait diğer işlemleri gerçekleştirmek zamanla ...
-
MS-SQL kullanmış olanlar bilirler auto increment kolon oluşturmak iki tıklama kadar kolaydır fakat ORACLE a gelince işler biraz farklı yürüy...