H2 Veritabanı - Değiştir

ALTER, tablo yapısını farklı maddeler ekleyerek değiştirmek için kullanılan bir komuttur. alterkomut. Senaryoya göre, alter komutuna ilgili cümle eklememiz gerekir. Bu bölümde, alter komutunun çeşitli senaryolarını tartışacağız.

Tabloyu Değiştir Ekle

Tablo Ekle Ekle ilgili veri türü ile birlikte tabloya yeni bir sütun eklemek için kullanılan bir komuttur. Bu komut, bu bağlantıdaki işlemi gerçekleştirir.

Sözdizimi

Alter Table Add komutunun genel sözdizimi aşağıdadır.

ALTER TABLE [ IF EXISTS ] tableName ADD [ COLUMN ] 
{ [ IF NOT EXISTS ] columnDefinition [ { BEFORE | AFTER } columnName ] 
   | ( { columnDefinition } [,...] ) }

Misal

Bu örnekte, yeni bir sütun ekleyeceğiz start_date masaya tutorials_tbl. Başlangıç_tarihi için veri türü Tarih'tir. Yeni bir sütun eklemek için sorgu aşağıdadır.

ALTER TABLE tutorials_tbl ADD start_date DATE;

Yukarıdaki sorgu aşağıdaki çıktıyı üretir.

(6) rows effected

Tabloyu Değiştir Kısıtlama Ekle

Tablo değiştir kısıtlama ekleme, tabloya birincil anahtar, yabancı anahtar, boş değil vb. Gibi farklı kısıtlamalar eklemek için kullanılan bir komuttur.

Henüz mevcut değilse gerekli dizinler otomatik olarak oluşturulur. Benzersiz kısıtlamayı kontrol etmeyi devre dışı bırakmak mümkün değildir. Bu komut, bu bağlantıda açık bir işlem gerçekleştirir.

Sözdizimi

Alter table add constraint komutunun genel sözdizimi aşağıdadır.

ALTER TABLE [ IF EXISTS ] tableName ADD constraint [ CHECK | NOCHECK ]

Misal

Bu örnekte, bir birincil anahtar kısıtlaması ekleyelim (tutorials_tbl_pk) tablonun sütun kimliğine tutorials_tbl, aşağıdaki sorguyu kullanarak.

ALTER TABLE tutorials_tbl ADD CONSTRAINT tutorials_tbl_pk PRIMARYKEY(id);

Yukarıdaki sorgu aşağıdaki çıktıyı üretir.

(6) row (s) effected

Tabloyu Yeniden Adlandırma Kısıtlamasını Değiştir

Bu komut, belirli bir ilişki tablosunun kısıtlama adını yeniden adlandırmak için kullanılır. Bu komut, bu bağlantıda açık bir işlem gerçekleştirir.

Sözdizimi

Aşağıda, Alter Table Rename Constraint komutunun genel sözdizimi yer almaktadır.

ALTER TABLE [ IF EXISTS ] tableName RENAME oldConstraintName TO newConstraintName

Bu sözdizimini kullanırken, eski kısıtlama adının ilgili sütunda olması gerektiğinden emin olun.

Misal

Bu örnekte, tablonun birincil anahtar kısıtlama adını değiştireceğiz tutorials_tbl itibaren tutorials_tbl_pk -e tutorials_tbl_pk_constraint. Bunu yapmak için sorgu aşağıdadır.

ALTER TABLE tutorials_tbl RENAME CONSTRAINT 
tutorials_tbl_pk TO tutorials_tbl_pk_constraint;

Yukarıdaki sorgu aşağıdaki çıktıyı üretir.

(1) row (s) effected

Tabloyu Değiştir Sütunu Değiştir

Bu komut, belirli bir tablonun sütununun yapısını ve özelliklerini değiştirmek için kullanılır. Özelliklerin değiştirilmesi, bir sütunun veri türünü değiştirmek, bir sütunu yeniden adlandırmak, kimlik değerini değiştirmek veya seçiciliği değiştirmek anlamına gelir.

Sözdizimi

Aşağıda, Tabloyu Değiştir Sütunu Değiştir komutunun genel sözdizimi verilmiştir.

ALTER TABLE [ IF EXISTS ] tableName ALTER COLUMN columnName 
{ { dataType [ DEFAULT expression ] [ [ NOT ] NULL ] [ AUTO_INCREMENT | IDENTITY ] } 
| { RENAME TO name } 
| { RESTART WITH long } 
| { SELECTIVITY int } 
| { SET DEFAULT expression } 
| { SET NULL } 
| { SET NOT NULL } }

Yukarıdaki sözdiziminde -

  • RESTART - komut, otomatik artış sütununun sonraki değerini değiştirir.

  • SELECTIVITY- komut bir sütun için seçiciliği (1-100) ayarlar. Seçicilik değerine bağlı olarak, sütunun değerini görüntüleyebiliriz.

  • SET DEFAULT - bir sütunun varsayılan değerini değiştirir.

  • SET NULL - sütunu NULL'a izin verecek şekilde ayarlar.

  • SET NOT NULL - sütunu NOT NULL'a izin verecek şekilde ayarlar.

Misal

Bu örnekte, tablonun sütununu yeniden adlandıracağız tutorials_tbl itibaren Title -e Tutorial_Title aşağıdaki sorguyu kullanarak.

ALTER TABLE tutorials_tbl ALTER COLUMN title RENAME TO tutorial_title;

Yukarıdaki sorgu aşağıdaki çıktıyı üretir.

(0) row(s) effected

Benzer şekilde ALTER komutu ile farklı senaryolar gerçekleştirebiliriz.