Kamis, 01 Agustus 2019

Manajemen Table & Record Oracle

Membuat Tabel

CREATE TABLE mahasiswa
(nim number(10) primary key,
nama varchar2(30) not null,
tgl_lahir date,
-- umur number(3) check (sks in ('1','2','3','4','.....','100'),
-- umur number(3) check (sks between 1 and 100),
jenis_kelamin char(1) check (jenis_kelamin in ('L','P')),
telepon varchar2(15) unique);

CREATE TABLE program_studi
(id_prodi char(5) primary key,
nama_prodi varchar2(30) not null,
jenjang char(2) check (jenjang in ('D3','S1','S2')));

CREATE TABLE mata_kuliah
(id_matkul char(5) primary key,
nama_matkul varchar2(40) not null,
sks number(1) check (sks between 1 and 6));

CREATE TABLE Nilai
(id_nilai char(5) primary key,
nim number(10) not null,
constraint fk_nilai_mahasiswa
foreign key(nim)
references mahasiswa(nim)
on delete cascade,

id_matkul char(5) not null,
constraint fk_nilai_matakuliah
foreign key (id_matkul)
references mata_kuliah (id_matkul)
on delete cascade,

nilai_angka number(3)
check (nilai_angka between 0 and 100),
nilai_huruf char(2));

Mengubah struktur tabel

Menambahkan kolom email dan alamat pada tabel mahasiswa
ALTER TABLE mahasiswa
ADD (Email varchar2(50) unique,
Alamat varchar2(50));

Menganti lebar data pada kolom nama menjadi 50
ALTER TABLE mahasiswa
MODIFY nama varchar2(50);

Menghapus kolom telepon pada tabel mahasiswa
ALTER TABLE mahasiswa
DROP COLUMN telepon;

Ubah kolom jenis_kelamin menjadi jk
ALTER TABLE Mahasiswa
RENAME COLUMN jenis_kelamin to jk;

Menambahkan kolom id_prodi dan dihubungkan ke tabel prodi
ALTER TABLE mahasiswa
ADD (id_prodi char(5),
constraint FK_Mahasiswa_Programstudi
foreign key(id_prodi)
References PROGRAM_STUDI (id_prodi)
on delete cascade);

Record Management


Menambah sebagian record
insert into program_studi (id_prodi,nama_prodi)
values ('SI','Sistem Informasi');

Menambah 1 record penuh
insert into program_studi values ('TI','Teknik Informatika','S1');

Mengubah isi record
UPDATE MAHASISWA
SET nama = 'yasha',
jk = 'P'
where nim = '8040170092';

Menghapus isi record
DELETE mahasiswa
where id_pengarang = '8040170092';

MULTIPLE TABLE

select M.nama, P.nama_prodi, P.jenjang, N.huruf
from mahasiswa M join program_studi P
on M.id_prodi = P.id_prodi
where P.jenjang LIKE 'S1';

0 komentar:

Posting Komentar