6.1 Ngganti struktur database

Lan pungkasane, bagean sing paling enak kanggo nggarap database yaiku ngganti database. Yen sampeyan mikir iki prasaja banget, mula iki anekdot kanggo sampeyan babagan topik kasebut:


The service station master, wiping his hands, hands over the car to the client and chats along the way:
- But who do you work for?
- I am a cardiac surgeon, I perform heart operations.
- And they pay a lot?
- $20,000 per operation.
- Nothing for myself ... But we, in fact, are doing the same thing, sorting out the engines, and they pay me only $ 300 ...
- Do you want to earn as much as I do?
- Want...
The surgeon starts the engine in the car and turns to the master:
- Move over!

Kahanan padha persis karo database. Sampeyan pengin njupuk bagean saka data ing tabel kapisah? Oke, sampeyan kudu:

  • nggawe tabel anyar
  • nyalin data menyang tabel anyar iki
  • mbusak kolom saka tabel lawas
  • ngganti kabeh pitakon SQL sing diarani tabel lawas
  • nambah pitakon SQL sing bakal ngakses tabel anyar
  • ngganti kode Jawa sing makarya karo tabel ing cara lawas
  • ngganti skrip serep lan mulihake, amarga saiki struktur tabel ora cocog
  • yen sampeyan duwe data test kanggo pangembang, sampeyan uga kudu ngganti

Senajan ing kasunyatan iku malah luwih elek:

Struktur database anyar:

  • pisanan sampeyan ngganti struktur tabel ing mesin pangembang
  • banjur sampeyan yakin yen struktur kuwi pancene luwih apik
  • nyetujoni struktur database anyar

Skrip migrasi:

  • sampeyan nulis skrip sing bakal ngganti data tabel, etc ing database nyata
  • mbukak Tulisan iki ing mesin karo struktur database lawas lan ndeleng carane owah-owahan
  • verifikasi kabeh panggonan kritis saka basa anyar

Update ing sale

  • mungkasi database produksi
  • nggawe serep lengkap
  • ngeksekusi skrip
  • amarga biasane ana akeh ing pasar, skrip kasebut bisa digunakake nganti pirang-pirang jam

Sampeyan miwiti prod lan ngarep-arep yen sampeyan ora kudu muter kabeh maneh.

6.2 TABEL ALTER statement

Ing tangan liyane, script dhewe, kang ngganti struktur Tabel, banget prasaja. Ing sawetara cara, padha karo skrip nggawe tabel. Tampilan umum panyuwunan owah-owahan tabel:

ALTER TABLE table
team 1,
team 2,
Team N

Prentah beda banget, nanging telung klompok utama bisa dibedakake:

  • ADD- nambah soko kanggo meja
  • MODIFY- ngganti soko ing meja
  • DROP- mbusak soko ing meja

Lan nalika aku ngomong soko, iku ora bab data, nanging bab struktur meja.

Contone, sampeyan mutusake kanggo nambah kolom anyar menyang tabel, banjur sampeyan kudu nglakokake pitakon ing ngisor iki:

ALTER TABLE table
	ADD COLUMN Name type

Ayo nulis pitakon sing bakal nambah kolom email menyang tabel karyawan :

ALTER TABLE employee
	ADD COLUMN email  VARCHAR(10)

Saiki ayo ngganti dawa string email saka 10 nganti 100: iki kita butuh skrip anyar:

ALTER TABLE employee
	MODIFY COLUMN email VARCHAR(100)

Yen sampeyan pengin ngganti sawetara atribut kolom, nanging dudu jinise, mula sampeyan butuh perintah kasebut ALTER COLUM . Ayo nyetel nilai email standar :

ALTER TABLE employee
	ALTER COLUMN email VARCHAR(100)  DEFAULT 'test@test.com'

Lan pungkasane, kolom bisa dibusak yen sampeyan ora perlu:

ALTER TABLE employee
	DROP COLUMN email 

6.3 Nambah lan mbusak kunci utama

Lan sawetara conto liyane migunani.

Contone, kita kelalen ngumumake kolom id minangka kunci utama. Sampeyan bisa nindakake kanthi kapisah liwat ALTER TABLE:

ALTER TABLE employee
	ADD PRIMARY KEY (email);

Mbusak malah luwih gampang:

ALTER TABLE employee
	DELETE PRIMARY KEY;