KULLANIM
COMMENT ON
{
TABLE nesne_ismi |
COLUMN tablo_ismi.sütun_ismi |
AGGREGATE işlev_ismi (işlev_türü) |
CAST (kaynak_türü AS hedef_türü) |
CONSTRAINT kısıt_ismi ON tablo_ismi |
CONVERSION nesne_ismi |
DATABASE nesne_ismi |
DOMAIN nesne_ismi |
FUNCTION işlev_ismi (arg1_türü, arg2_türü, ...) |
INDEX nesne_ismi |
LARGE OBJECT büyük_nesne_oid |
OPERATOR işleç (sol_terim_türü, sağ_terim_türü) |
OPERATOR CLASS nesne_ismi USING indeks_yöntemi |
[ PROCEDURAL ] LANGUAGE nesne_ismi |
RULE kural_ismi ON tablo_ismi |
SCHEMA nesne_ismi |
SEQUENCE nesne_ismi |
TRIGGER tetik_ismi ON tablo_ismi |
TYPE nesne_ismi |
VIEW nesne_ismi
} IS 'metin'
AÇIKLAMA
COMMENT bir veritabanı nesnesi hakkındaki bir açıklamayı kaydeder.Bir açıklamayı değiştirmek için aynı nesneye yeni bir COMMENT uygulayın. Her nesnede sadece bir açıklama dizgesi bulunabilir. Bir açıklamayı silmek için 'metin' dizgesi olarak NULL yazın. Bir nesne silindiğinde açıklaması da özdevinimli olarak silinir.
Açıklamalar \dd, \d+ ve \l+ psql komutları ile kolayca alınabilir. Diğer kullanıcı arayüzleri açıklamaları almak için psql'in yerleşik olarak kullandığı obj_description ve col_description işlevlerini kullanabilirler (bkz.
http://www.postgresql.org/docs/8.0/static/functions-info.html#FUNCTIONS-INFO-COMMENT-TABLE).
PARAMETRELER
- nesne_ismi, tablo_ismi.sütun_ismi, kısıt_ismi, işlev_ismi, işleç, kural_ismi, tetik_ismi
-
Açıklanacak nesnenin ismi. Tablolar, ortak değer işlevleri, etki alanları, işlevler, indeksler, işleçler, işleç sınıfları, kayıt listeleri, türler ve sanal tablolar şema nitelemeli olabilir.
- işlev_türü
-
Ortak değer işlevinin veri türü. İşlev herhangi bir veri türünü kabul ediyorsa, * belirtilebilir.
- büyük_nesne_oid
-
Büyük nesnenin nesne kimliği.
- PROCEDURAL
-
Bu sözcük parazittir.
- kaynak_türü
-
Tür dönüşümü yapılacak kaynak veri türünün ismi.
- hedef_türü
-
Tür dönüşümünün hedef veri türü ismi.
- 'metin'
-
Yeni açıklama ise bir dizge sabiti olarak yazılır. Açıklama silinmek isteniyorsa NULL yazılır.
EK BİLGİ
Bir veritabanı açıklaması sadece bu veritabanında oluşturulabilir ve sadece bu veritabanından görüntülenebilir, başka veritabanından görüntülenemez.Açıklamalar için bir güvenlik mekanizması yoktur: bir veritabanına bağlanan her kullanıcı bu veritabanındaki nesnelerin tüm açıklamalarını görebilir (sahibi olmadığı nesnelerin açıklamalarını sadece ayrıcalıklı kullanıcı değiştirebilir). Bu nedenle, güvenlik açığı oluşturabilecek bilgileri açıklamalara yazmayın.
ÖRNEKLER
mytable tablosuna bir açıklama eklemek için:
-
COMMENT ON TABLE mytable IS 'Bu tablo benimdir.';
Onu kaldırmak için:
-
COMMENT ON TABLE mytable IS NULL;
Bazı örnekler:
COMMENT ON AGGREGATE my_aggregate (double precision) IS 'Örnek sapmayı hesaplar'; COMMENT ON CAST (text AS int4) IS 'metinleri int4 türüne dönüştürür'; COMMENT ON COLUMN my_table.my_column IS 'Personelin kimlik numarası'; COMMENT ON CONVERSION my_conv IS 'Unicode'a dönüşüm'; COMMENT ON DATABASE my_database IS 'Geliştirdiğim veritabanı'; COMMENT ON DOMAIN my_domain IS 'Eposta adres alanı'; COMMENT ON FUNCTION my_function (timestamp) IS 'Romen sayılarıyla döner'; COMMENT ON INDEX my_index IS 'Kimlik numarasının eşsiz olmasını sağlar'; COMMENT ON LANGUAGE plpython IS 'saklanmış yordamlar için Python desteği'; COMMENT ON LARGE OBJECT 346344 IS 'Planlama belgesi'; COMMENT ON OPERATOR ^ (text, text) IS 'iki metni kesiştirir'; COMMENT ON OPERATOR ^ (NONE, text) IS 'Metin üzerinde bir önek işlecidir'; COMMENT ON OPERATOR CLASS int4ops USING btree IS '4 baytlık tamsayı işleçleri'; COMMENT ON RULE my_rule ON my_table IS 'Personel kayıt günlükleri'; COMMENT ON SCHEMA my_schema IS 'Bölümlerin verileri'; COMMENT ON SEQUENCE my_sequence IS 'Birincil anahtar üretimi için.; COMMENT ON TABLE my_schema.my_table IS 'Personel Bilgileri'; COMMENT ON TRIGGER my_trigger ON my_table IS 'RI için kullanılır'; COMMENT ON TYPE complex IS 'Karmaşık sayı veri türü'; COMMENT ON VIEW my_view IS 'Bölüm maliyetleri';
UYUMLULUK
SQL standardında COMMENT diye bir deyim yoktur.
ÇEVİREN
Nilgün Belma Bugüner <nilgun (at) belgeler·gen·tr>, Nisan 2005