PostgreSQL ALTER Tablosu: Sütun Ekle, Sütunu/Tablo Örneklerini Yeniden Adlandır

ALTER TABLE komutu bir tablonun yapısını değiştirmek için kullanılır. PostgreSQL masa. Tablo sütunlarını veya tablonun adını değiştirmek için kullanılan komuttur.

Sözdizimi

İşte sözdizimi PostgreSQL ALTER TABLE komutu:

ALTER TABLE table-name action;

table-name parametresi, değiştirmeniz gereken tablonun adıdır.

Action parametresi, bir sütunun adını değiştirmek, bir sütunun veri türünü değiştirmek vb. gibi gerçekleştirmeniz gereken eylemdir.

Açıklama

ALTER TABLE komutu varolan bir tablonun tanımını değiştirir. Aşağıdaki alt formları alır:

  • SÜTUN EKLE: Bu, bir tabloya yeni bir sütun eklemek için CREATE TABLE komutuna benzer bir sözdizimi kullanır.
  • BIRAKMA SÜTUNU: bir tablo sütununu bırakmak için. Sütunlara uygulanan kısıtlamalar ve dizinler de kaldırılacaktır.
  • VARSAYILANI AYARLA/BIRAK: Bir sütunun varsayılan değerini kaldırmak için kullanın. Ancak değişiklik yalnızca sonrakiler için geçerli olacaktır. INSERT ifadeleri.
  • AYARLA/BIRAKMA BOŞ DEĞİL: Bir sütunun boş değerlere izin verip vermeyeceğini değiştirir.
  • İSTATİSTİKLERİ AYARLAYIN: ANALİZ işlemleri için her sütuna yönelik istatistik toplama hedefini ayarlamak için.
  • DEPOLAMA AYARI: Bir sütunun depolama modunu ayarlamak için. Bu, sütunun satır içi mi yoksa ek bir tabloda mı tutulacağını belirleyecektir.
  • OIDSİZ SET: Tablonun eski sütununu kaldırmak için kullanın.
  • ADINI DEĞİŞTİRMEK: tablo adını veya sütun adını değiştirmek için.
  • table_constraint EKLE: Bir tabloya yeni bir kısıtlama eklemek için kullanın Şununla aynı sözdizimini kullanır: TABLO OLUŞTUR Komut.
  • DÜŞME KISITLAMASI: Bir tablo kısıtlamasını kaldırmak için kullanın.
  • SAHİBİ: Bir tablonun, dizinin, dizinin veya görünümün sahibini belirli bir kullanıcıya değiştirmek için.
  • KÜME: gelecekteki küme işlemlerini gerçekleştirmek için kullanılacak bir tabloyu işaretlemek için.

Bir sütunu değiştirme

Bir sütun çeşitli şekillerde değiştirilebilir. Bu tür değişiklikler ALTER TABLE komutu kullanılarak yapılabilir. Bunları tartışalım:

Yeni bir sütun ekleme

Yeni bir sütun eklemek için PostgreSQL tablo, ALTER TABLE komutu aşağıdaki sözdizimiyle kullanılır:

ALTER TABLE table-name
  ADD new-column-name column-definition;

Tablo adı değiştirilecek tablonun adıdır.

Yeni sütun adı eklenecek yeni sütunun adıdır.

Sütun tanımı şudur: veri tipi yeni sütunun.

Aşağıda gösterilen Kitap tablosuna bakın:

Yeni bir sütun ekleme PostgreSQL

Tablonun iki sütunu var, id ve name. Tabloya yeni bir sütun eklememiz ve ona author adını vermemiz gerekiyor. Sadece şu komutu çalıştırın:

ALTER TABLE Book
  ADD author VARCHAR(50);

Yukarıdaki komutu çalıştırdıktan sonra Kitap tablosu artık aşağıdaki gibidir:

Yeni bir sütun ekleme PostgreSQL

Yeni sütun başarıyla eklendi.

Tablo Sütunu Yeniden Adlandırma

Bir sütunun adını değiştirmek için ALTER TABLE komutunu kullanabiliriz. Bu durumda, komut aşağıdaki sözdizimiyle kullanılır:

ALTER TABLE table-name
  RENAME COLUMN old-name TO new-name;

Tablo adı, sütunu yeniden adlandırılacak tablonun adıdır.

Eski ad, sütunun eski/şimdiki adıdır.

Yeni ad, sütunun yeni adıdır. Aşağıda gösterilen Kitap tablosunu düşünün:

Kitap:

Tablo Sütununu Yeniden Adlandırma PostgreSQL

Book_author için sütun yazarının adına ihtiyacımız var. İşte komut:

ALTER TABLE Book
  RENAME COLUMN author TO book_author;

Komutu çalıştırdıktan sonra tablonun yapısını görebiliriz:

Tablo Sütununu Yeniden Adlandırma PostgreSQL

Sütun adı başarıyla değiştirildi.

Bir Sütun için Varsayılan Değer Ayarlama

Bir sütun için varsayılan bir değer belirleyebiliriz, böylece INSERT işlemleri sırasında o sütun için bir değer belirtmediğinizde bile varsayılan değer kullanılır. Bu durumda, ALTER TABLE komutu aşağıdaki sözdizimiyle kullanılabilir:

ALTER TABLE table-name ALTER COLUMN column-name [SET DEFAULT value];

Tablo adı, sütunu değiştirilecek tablonun adıdır.

Sütun adı, varsayılan değeri ayarlanacak olan addır.

Değer, sütunun varsayılan değeridir.

Aşağıda verilen Kitap tablosunu düşünün:

Bir Sütun için Varsayılan Değer Ayarlama

book_author sütunu için varsayılan bir değer ayarlamamız gerekiyor. Aşağıdaki komutu çalıştırabiliriz:

ALTER TABLE Book ALTER COLUMN book_author SET DEFAULT 'Nicholas Samuel';		

Şimdi tabloya bir satır ekleyelim:

INSERT INTO Book (id, name)
 VALUES (6, 'PostgreSQL for Beginners');

Yalnızca iki sütuna (id ve name) değer eklediğimizi unutmayın. Ancak,book_author sütunu için varsayılan değer kullanılmıştır:

Bir Sütun için Varsayılan Değer Ayarlama

Kontrol Kısıtlaması Ekleme

Kontrol kısıtlaması, bir tabloya eklenen kayıtların doğrulanmasına yardımcı olur. Bunu ALTER TABLE komutunu ADD CHECK deyimiyle birleştirerek yapabiliriz. Sözdizimi:

ALTER TABLE table-name ADD CHECK expression;

Tablo adı değiştirilecek tablonun adıdır.

İfade, tablo sütununa uygulanacak kısıtlamadır.

Kitap tablosunun kitap_yazar sütununu yalnızca Nicholas ve Samuel değerlerini kabul edecek şekilde değiştirelim:

ALTER TABLE Book ADD CHECK (book_author IN ('Nicholas', 'Samuel'));

Şimdi Book tablosunun Book_author sütununa Nicholas veya Samuel dışında bir değer eklemeye çalışalım:

INSERT INTO Book
VALUES(7, 'Best PostgreSQL Book', 'Gregory Bush');

Bu ifade aşağıdaki hatayı döndürecektir:

Kontrol Kısıtlaması Ekleme

Ekleme işlemi, kontrol kısıtlamasını ihlal ettiğimiz için başarısız oldu.

Tabloyu Yeniden Adlandırma

Bir tabloyu yeniden adlandırmak için ALTER TABLE komutunun sözdizimi aşağıda verilmiştir:

ALTER TABLE table-name
  RENAME TO new-table-name;

Tablo adı tablonun geçerli adıdır.

Yeni tablo adı tabloya atanacak yeni addır.

Örneğin Kitap tablosunun adını Kitaplar olarak değiştirelim:

ALTER TABLE Book
  RENAME TO Books;

pgAdmin'i kullanma

Şimdi bu eylemlerin pgAdmin kullanılarak nasıl gerçekleştirilebileceğini görelim.

Yeni bir sütun ekleme

Aynısını pgAdmin aracılığıyla gerçekleştirmek için şunu yapın:

) 1 Adım pgAdmin hesabınıza giriş yapın.

) 2 Adım

  1. Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
  2. Demo'yu tıklayın.

pgAdmin Kullanarak Yeni Bir Sütun Ekleme

) 3 Adım Sorgu düzenleyicisine sorguyu yazın:

ALTER TABLE Book
  ADD author VARCHAR(50);

) 4 Adım Yürüt düğmesine tıklayın.

pgAdmin Kullanarak Yeni Bir Sütun Ekleme

) 5 Adım Sütunun eklenip eklenmediğini kontrol etmek için aşağıdakileri yapın:

  1. Sol gezinme bölmesinden Veritabanları'na tıklayın.
  2. Demo'yu genişletin.
  3. Şemaları genişletin.
  4. Genel'i genişletin.
  5. Tablolar'ı genişletin.
  6. Kitabı genişlet.
  7. Sütunları Genişletin.

pgAdmin Kullanarak Yeni Bir Sütun Ekleme

Sütun aşağıda gösterildiği gibi eklenmiş olmalıdır:

pgAdmin Kullanarak Yeni Bir Sütun Ekleme

Tablo Sütunu Yeniden Adlandırma

Aynısını pgAdmin aracılığıyla gerçekleştirmek için şunu yapın:

) 1 Adım pgAdmin hesabınıza giriş yapın.

) 2 Adım

  1. Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
  2. Demo'yu tıklayın.

pgAdmin'i Kullanarak Tablo Sütununu Yeniden Adlandırma

) 3 Adım Sorgu düzenleyicisine sorguyu yazın:

ALTER TABLE Book
  RENAME COLUMN author TO book_author;

) 4 Adım Yürüt düğmesine tıklayın.

pgAdmin'i Kullanarak Tablo Sütununu Yeniden Adlandırma

) 5 Adım Değişikliğin başarılı olup olmadığını denetlemek için aşağıdakileri yapın:

  1. Sol gezinme bölmesinden Veritabanları'na tıklayın.
  2. Demo'yu genişletin.
  3. Şemaları genişletin.
  4. Genel'i genişletin.
  5. Tablolar'ı genişletin.
  6. Kitabı genişlet.
  7. Sütunları Genişletin.

pgAdmin'i Kullanarak Tablo Sütununu Yeniden Adlandırma

Artık sütunlar aşağıdaki gibi olmalıdır:

pgAdmin'i Kullanarak Tablo Sütununu Yeniden Adlandırma

Sütun başarıyla değiştirildi.

Bir Sütun için Varsayılan Değer Ayarlama

Aynısını pgAdmin aracılığıyla gerçekleştirmek için şunu yapın:

) 1 Adım pgAdmin hesabınıza giriş yapın.

) 2 Adım

  1. Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
  2. Demo'yu tıklayın.

Bir Sütun için Varsayılan Değer Ayarlama

) 3 Adım Sorgu düzenleyicisine sorguyu yazın:

ALTER TABLE Book ALTER COLUMN book_author SET DEFAULT 'Nicholas Samuel';		

) 4 Adım Yürüt düğmesine tıklayın.

Bir Sütun için Varsayılan Değer Ayarlama

) 5 Adım Test etmek için sorgu düzenleyicisinde aşağıdaki komutu çalıştırın:

INSERT INTO Book (id, name)
 VALUES (6, 'PostgreSQL for Beginners')

) 6 Adım Artık varsayılan değerin kitap_yazar sütununa eklenip eklenmediğini kontrol etmek için tabloyu sorgulayabiliriz:

Bir Sütun için Varsayılan Değer Ayarlama

Kontrol Kısıtlaması Ekleme

Aynısını pgAdmin aracılığıyla gerçekleştirmek için şunu yapın:

) 1 Adım pgAdmin hesabınıza giriş yapın.

) 2 Adım

  1. Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
  2. Demo'yu tıklayın.

pgAdmin'i Kullanarak Kontrol Kısıtlaması Ekleme

) 3 Adım Sorgu düzenleyicisine sorguyu yazın:

ALTER TABLE Book ADD CHECK (book_author IN ('Nicholas', 'Samuel'))

) 4 Adım Yürüt düğmesine tıklayın.

pgAdmin'i Kullanarak Kontrol Kısıtlaması Ekleme

) 5 Adım Bunu test etmek için aşağıdakileri yapın:

  1. Sorgu düzenleyicisine aşağıdaki sorguyu yazın:
    INSERT INTO Book
    VALUES(7, 'Best PostgreSQL Book', 'Gregory Bush');
    
  2. Yürüt düğmesine tıklayın.

    pgAdmin'i Kullanarak Kontrol Kısıtlaması Ekleme

    Aşağıdakini döndürecektir:

pgAdmin'i Kullanarak Kontrol Kısıtlaması Ekleme

Tabloyu Yeniden Adlandırma

Aynısını pgAdmin aracılığıyla gerçekleştirmek için şunu yapın:

) 1 Adım pgAdmin hesabınıza giriş yapın.

) 2 Adım

  1. Soldaki gezinme çubuğundan Veritabanları'na tıklayın.
  2. Demo'yu tıklayın.

pgAdmin'i Kullanarak Tabloyu Yeniden Adlandırma

) 3 Adım Sorgu düzenleyicisine sorguyu yazın:

ALTER TABLE Book
  RENAME TO Books;

) 4 Adım Yürüt düğmesine tıklayın.

pgAdmin'i Kullanarak Tabloyu Yeniden Adlandırma

) 5 Adım Tablonun yeniden adlandırılıp adlandırılmadığını kontrol etmek için aşağıdakileri yapın:

  1. Sol gezinme bölmesinden Veritabanları'na tıklayın.
  2. Demo'yu genişletin.
  3. Şemaları genişletin.
  4. Genel'i genişletin.
  5. Tablolar'ı genişletin.

pgAdmin'i Kullanarak Tabloyu Yeniden Adlandırma

Tablo başarıyla yeniden adlandırıldı.

ÖZET

  • ALTER TABLE ifadesi tablonun yapısını değiştirmek için kullanılır.
  • ALTER TABLE komutu, gerçekleştirmeniz gereken göreve bağlı olarak çeşitli biçimler alır.
  • Yapı, tablo sütunları veya tablonun kendisi olabilir.
  • Bir tablonun adını değiştirmek için bu ifadeyi kullanabiliriz.
  • ALTER TABLE komutu bir sütunun varsayılan değerini ayarlamak için kullanılabilir.
  • İfade, bir tablo sütununa girilen değerleri doğrulamak için kullanılabilir.

Bu Eğitimde kullanılan Veritabanını İndirin