SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

Tambahkan Kolom yang Dihasilkan ke Tabel di SQLite

Anda dapat menambahkan kolom yang dihasilkan ke tabel yang ada di SQLite dengan menggunakan ALTER TABLE pernyataan.

Implementasi SQLite dari ALTER TABLE pernyataan sangat terbatas, tetapi memungkinkan Anda untuk menambahkan kolom – termasuk kolom yang dihasilkan.

Kolom yang dihasilkan (juga dikenal sebagai "kolom yang dihitung") adalah kolom yang mendapatkan nilainya dari ekspresi yang menghitung nilai dari kolom lain.

Contoh

Berikut adalah contoh sederhana untuk didemonstrasikan.

Tabel Asli

Pertama-tama mari kita buat tabel tanpa kolom yang dihasilkan dan masukkan beberapa data:

CREATE TABLE Person( 
    Id INTEGER PRIMARY KEY, 
    FirstName,
    LastName
);

INSERT INTO Person VALUES 
    ( 1, 'Barney', 'Rubble' ),
    ( 2, 'Peter', 'Griffin' ),
    ( 3, 'Fritz', 'The Cat' );

SELECT * FROM Person;

Hasil:

Id          FirstName   LastName  
----------  ----------  ----------
1           Barney      Rubble    
2           Peter       Griffin   
3           Fritz       The Cat   

Tambahkan Kolom yang Dihasilkan

Sekarang mari tambahkan kolom yang dihasilkan pada tabel itu.

ALTER TABLE Person ADD COLUMN 
  FullName GENERATED ALWAYS AS (FirstName || ' ' || LastName);

SELECT * FROM Person;

Hasil:

Id          FirstName   LastName    FullName     
----------  ----------  ----------  -------------
1           Barney      Rubble      Barney Rubble
2           Peter       Griffin     Peter Griffin
3           Fritz       The Cat     Fritz The Cat

Kolom yang dihasilkan bernama FullName telah ditambahkan. Kolom ini menggabungkan FirstName kolom dengan Nama Belakang kolom, dan oleh karena itu siapa pun yang menanyakan tabel ini tidak perlu lagi melakukan penggabungan itu sendiri dalam kueri mereka.

Memperbarui Data

Anda tidak dapat memperbarui data di kolom yang dihasilkan secara langsung. Anda perlu memperbarui data di kolom dasar yang berkontribusi pada nilainya.

Jadi jika kami ingin memperbarui Barney Rubble ke Betty Rubble , kita perlu memperbarui FirstName kolom.

UPDATE Person 
SET FirstName = 'Betty'
WHERE Id = 1;

SELECT * FROM Person;

Hasil:

Id          FirstName   LastName    FullName       
----------  ----------  ----------  ---------------
1           Betty       Rubble      Betty Rubble   
2           Peter       Griffin     Peter Griffin  
3           Fritz       The Cat     Fritz The Cat  

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Data SQLite ke RecyclerView

  2. Bagaimana SQLite Ltrim() Bekerja

  3. Android:Kesalahan Menyalin basis data (Sqliite) Dari Folder Aset

  4. Tambahkan Kolom yang Dihasilkan ke Tabel di SQLite

  5. Masalah dengan SQLiteOpenHelper di android 2.X dan 3.X