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

İçindekiler:

Anonim

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

Bu eğitimde şunları öğreneceksiniz:

  • Sözdizimi
  • Açıklama
  • Bir sütunu değiştirme
    • Yeni bir sütun eklemek
    • Tablo Sütununu Yeniden Adlandırma
  • Bir Sütun için Varsayılan Bir Değer Ayarlama
  • Kontrol Kısıtlaması Ekleme
  • Bir Tabloyu Yeniden Adlandırma
  • PgAdmin'i kullanma

Sözdizimi

PostgreSQL ALTER TABLE komutunun sözdizimi şöyledir:

ALTER TABLE table-name action;

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

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

Açıklama

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

  • SÜTUN EKLE : bu, tabloya yeni bir sütun eklemek için CREATE TABLE komutuyla benzer sözdizimi kullanır.
  • DROP COLUMN : bir tablo sütununu kaldırmak için. Sütunlara uygulanan kısıtlamalar ve dizinler de kaldırılacaktır.
  • SET / DROP DEFAULT : Bir sütunun varsayılan değerini kaldırmak için kullanın. Ancak, değişiklik yalnızca sonraki INSERT ifadelerine uygulanacaktır.
  • SET / DROP NOT NULL : Bir sütunun null değerlere izin verip vermeyeceğini değiştirir.
  • İSTATİSTİKLERİ AYARLA: ANALİZ işlemleri için her sütun için istatistik toplama hedefini ayarlamak için.
  • DEPOLAMA AYARI : Bir sütunun saklama modunu ayarlamak için. Bu, sütunun nerede tutulacağını, satır içi veya tamamlayıcı bir tabloda olup olmadığını belirleyecektir.
  • OIDS OLMADAN AYARLA : Tablonun eski sütununu kaldırmak için kullanın.
  • YENİDEN ADLANDIR : tablo adını veya sütun adını değiştirmek için.
  • ADD table_constraint : Bir tabloya yeni bir kısıt eklemek için kullanın CREATE TABLE komutuyla aynı sözdizimini kullanır.
  • DROP CONSTRAINT : Bir tablo kısıtlamasını kaldırmak için kullanın.
  • SAHİBİ : bir tablonun, sıranın, dizinin veya bir görünümün sahibini belirli bir kullanıcıya değiştirmek için.
  • KÜMELEME : 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 eklemek

Bir PostgreSQL tablosuna yeni bir sütun eklemek için, ALTER TABLE komutu aşağıdaki sözdizimi ile kullanılır:

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

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

New-column-name, eklenecek yeni sütunun adıdır.

Sütun tanımı, yeni sütunun veri türüdür.

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

Tabloda iki sütun, id ve isim vardır. Tabloya yeni bir sütun eklememiz ve ona yazar adını vermemiz gerekiyor. Sadece aşağıdaki komutu çalıştırın:

ALTER TABLE BookADD author VARCHAR(50);

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

Yeni sütun başarıyla eklendi.

Tablo Sütununu 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-nameRENAME 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 tablo kitabını düşünün:

Kitap:

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

ALTER TABLE BookRENAME COLUMN author TO book_author;

Komutu çalıştırdıktan sonra tablonun yapısını görüntüleyebiliriz:

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

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

INSERT işlemleri sırasında o sütun için bir değer belirlemeseniz bile, varsayılan değer kullanılacak şekilde bir sütun için varsayılan bir değer belirleyebiliriz. Bu durumda, ALTER TABLE komutu aşağıdaki sözdizimi ile 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ütun için varsayılan değerdir.

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

Book_author sütunu için varsayılan bir değer belirlememiz 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ütun, id ve name için değer eklediğimizi unutmayın. Ancak, book_author sütunu için varsayılan değer kullanıldı:

Kontrol Kısıtlaması Ekleme

Bir kontrol kısıtlaması, bir tabloya eklenen kayıtların doğrulanmasına yardımcı olur. Bunu ALTER TABLE komutunu ADD CHECK ifadesiyle 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 book_author sütununu yalnızca değerleri kabul edecek şekilde değiştirelim, Nicholas ve Samuel:

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

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

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

İfade aşağıdaki hatayı döndürür:

Kontrol kısıtlamasını ihlal ettiğimiz için ekleme işlemi başarısız oldu.

Bir Tabloyu Yeniden Adlandırma

Bir tabloyu yeniden adlandırmak için ALTER TABLE komutunun sözdizimi:

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

Tablo adı, tablonun mevcut adıdır.

New-table-name, tabloya atanacak yeni addır.

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

ALTER TABLE BookRENAME TO Books;

PgAdmin'i kullanma

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

Yeni bir sütun eklemek

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

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

Adım 2)

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

Adım 3) Sorguyu sorgu düzenleyicisine yazın:

ALTER TABLE BookADD author VARCHAR(50);

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

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

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

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

Tablo Sütununu Yeniden Adlandırma

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

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

Adım 2)

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

Adım 3) Sorguyu sorgu düzenleyicisine yazın:

ALTER TABLE BookRENAME COLUMN author TO book_author;

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

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

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

Sütunlar artık aşağıdaki gibi olmalıdır:

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

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

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

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

Adım 2)

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

Adım 3) Sorguyu sorgu düzenleyicisine yazın:

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

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

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

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

Adım 6) Şimdi, varsayılan değerin book_author sütununa eklenip eklenmediğini kontrol etmek için tabloyu sorgulayabiliriz:

Kontrol Kısıtlaması Ekleme

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

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

Adım 2)

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

Adım 3) Sorguyu sorgu düzenleyicisine yazın:

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

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

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

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

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

Bir Tabloyu Yeniden Adlandırma

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

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

Adım 2)

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

Adım 3) Sorguyu sorgu düzenleyicisine yazın:

ALTER TABLE BookRENAME TO Books;

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

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

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

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

Özet:

  • ALTER TABLE deyimi, 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.
  • Bu ifadeyi bir tablonun adını değiştirmek için 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ı indirin