0% menganggap dokumen ini bermanfaat (0 suara)
52 tayangan4 halaman

Praktikumbasisdata

Dokumen tersebut membahas tentang penggunaan perintah-perintah dasar SQL untuk mengelola basis data relasional, termasuk DDL, DML, membuat tabel, menambahkan data, dan mengambil data menggunakan perintah SELECT.
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai TXT, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
52 tayangan4 halaman

Praktikumbasisdata

Dokumen tersebut membahas tentang penggunaan perintah-perintah dasar SQL untuk mengelola basis data relasional, termasuk DDL, DML, membuat tabel, menambahkan data, dan mengambil data menggunakan perintah SELECT.
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai TXT, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 4

mysql -u root -p

atau
C:\xampp\mysql\bin\mysql.exe -u root -p
show databases; => untuk melihat data semua databases nya
DDL DML
DDL = Data Definition Languages yang digunakan membangun kerangka database
DML = untuk memanipulasi data
<Definition>
Structure
DML
<record>
Beda definition dan record
definition => fondasinya yaitu tabel atau tabelnya. Mengubah tabel mahasiswa nambah
atribut nama,wadah yg diubah atau tabel ditambah nama.
Isi dari tabel itu adalah record
DDL ada perintah untuk struktur
- create (membuat tabel)
- alter (untuk mengubah tipe data)
- drop (menghapus tabel)
- desc (melihat struktur tabel)
DML (Manipulation) untuk isinya
perintah :
- insert (tambah isi)
- update (ganti isi)
- delete (isi tabel yang dibuang)
- select (tampilkan isi tabelnya)

sintaks :
create database ifbilc;
use ifbilc;
show tables;

Database Relational = model pengembangan basis data yang berisi baris dan kolom
relasional
Mhs Mk Dosen
001 Alpro1 Osvari (Os)
002 Alpro3 Rizki Kurniati (Rk)

KRS
(001,Alpro1,Os)
(002,Alpro1,Os)
(002,Alpro3,Rk)

atribut/kolom
row/record/baris/tuple
tipe data enumerasi = nilai tercacah menjadi nilai yang baru atau jd yg lain

dalam DB string ada 2 kondisi :


statis/static = panjang data berapa sdh tau
dinamis/dinamic

create table mahasiswa(


-> NIM varchar(15) not null PRIMARY KEY, => wajib diisi dan tdk ada nim yang sama
-> Nama text not null,
-> Alamat text not null,
-> Email varchar(70) null)engine=Innodb;
show tables;
desc mahasiswa;
buat bentuk tabel dosen dan mahasiswa
Basis Data adalah kumpulan data/informasi berkaitan,disimpan secara sistematis dan
terorganisasi dengan baik sehingga menghasilkan informasi bermanfaat bagi user
dalam media
penyimpanan disimpan dalam DMS.

tbl_mhs

FIELD TYPE DEFAULT NULL INDEX


NIM VARCHAR(15) NOT PK
NAMA TEXT NOT
ALAMAT TEXT NOT
ANGKATAN INT(4) NOT
EMAIL VARCHAR(75) 'n/a' YES
TGL_LHIR DATE NOT

tbl_dosen

FIELD TYPE DEFAULT NULL INDEX


nip VARCHAR(25) NOT PK
NAMA TEXT NOT
PANGKAT VARCHAR(15) 'n/a' YES
GOLONGAN VARCHAR(5) 'n/a' YES
JABATAN VARCHAR(25) 'n/a' YES
EMAIL VARCHAR(75) 'n/a' YES

tbl_mk

FIELD TYPE DEFAULT NULL INDEX


KODE VARCHAR(10) NOT PK
DESKRIPSI VARCHAR(50) NOT
SKS INT(10) NOT
ANGKATAN INT(4) NOT
SEMESTER INT(8) NOT

SELECT Menampilkan representasian hasil copyan tabelnya.


SELECT * FROM tbl_mhs WHERE MONTH(tgl_lahir)<6; = bulan
SELECT NAMA,tgl_lahir FROM tbl_mhs;
SELECT NAMA,date_format(tgl_lahir,'%M,%d,%Y') FROM tbl_mhs;
SELECT NAMA,date_format(tgl_lahir,'%d-%m-%Y') as tgl_lahir FROM tbl_mhs
WHERE MONTH(tgl_lahir)<2 AND MONTH(tgl_lahir)>8;
SELECT 2+2;
SELECT NAMA,date_format(tgl_lahir,'%d-%m-%Y') as tgl_lahir,
(angkatan+month(tgl_lahir)) as hitung from tbl_mhs;
INSERT INTO tbl_mhs;
-> ('0902005','Selly','Kenten','2018',STR_TO_DATE('09-12-2000','%d-%m-%Y'));
SELECT * FROM tbl_mhs;

ERD = Diagram yang menghubungkan antar entitas


Entitas jg ada attribut,attribut ada hal penting jika sebuah entitas dominan/kuat
pastilah pnya sebuah penanda yg unik dr record satu ke record lain.
Contoh : Mahasiswa pnya nim yang beda walaupun orangnya sama
Entitas mahasiswa, pnya attribut :
NIM,NAMA,Angkatan.
Kode,Nama,Strata NIM, NAMA, ANGKATAN
NIM,KODE,NIP,Ruang,Waktu KODE,NAMA,SKS
JURUSAN 1 terdaftar kode n Mahasiswa n BELAJAR
n MK KURIKULUM
<jadwal>

n
DOSEN
JABATAN,GOLONGAN,PANGKAT,NAMA,NIP

ENTITAS RELASIONAL => MANY TO MANY atau bukan


Primary diperbanyak akan duplicate
create
desc
insert
select

TABEL RELASIONAL
insert into jadwal(nim,nip

SELECT itu membaca isi table.


format primary key

SELECT
SELECT <fields> FROM <tables>
WHERE <clauses>
<opt:GROUP BY <field>
ORDER BY <field>
MENAMBAH 1 FIELD BARU
SELECT
-> CONCAT (ni,"-",kode) as id_jadwal;
-> nilai,
-> CASE
-> WHEN nilai >=70 THEN 'LULUS'
-> WHEN nilai < 70 THEN 'TIDAK LULUS'
-> AND as keterangan
-> FROM jadwal;

SELECT nim,AVG(nilai) as rerata FROM jadwal;


SELECT nim,AVG(nilai) as rerata FROM jadwal GROUP BY nim;

SELECT nip,kode,AVG(nilai) as rerata FROM jadwal GROUP BY kode;


SELECT tbl_dosen,nama,tbl_mhs,tbl_mk,deskripsi,as matkul,AVG(jadwal,nilai) as
rerata
-> FROM jadwal,tbl_dosen,tbl_mk, WHERE jadwal,nip, = tbl_dosen,nip, AND jadwal,kode
= tbl_mk,kode
-> GROUP BY jadwal,nip;

SELECT tbl_dosen,nama,tbl_mhs,tbl_mk,deskripsi,as matkul,AVG(jadwal,nilai) as


rerata
-> FROM jadwal,tbl_dosen,tbl_mk, WHERE jadwal,nip, = tbl_dosen,nip, AND jadwal,kode
= tbl_mk,kode
-> GROUP BY jadwal,kode;

-> SELECT nim


-> from tbbl_mhs_prestasi;
SELECT * from tbl_mhs WHERE nim in (SELECT nim FROM tbl_mhs_prestasi);

tampilkan mahasiswa yang nilainya diatas rata-rata kelas

SELECT AVG(nilai) from jadwal;

SELECT * from jadwal


-> WHERE nilai > (SELECT avg(nilai) from jadwal;

cari nilai rata-rata tiap" mahasiswa


SELECT nim,avg(nilai) from jadwal group by nim;

having itu where utk agregat : count,max,min,sum,avg

select nim,avg(nilai) from jadwal group by nim


-> HAVING AVG(nilai) > (select avg(nilai) from jadwal);

Tampilkan mahasiswa > dr mata kuliah itu

select kode,avg(nilai) from jadwal group by kode;

select * from jadwal as tabel1


where tabel1.nilai >
(select avg(nilai) from jadwal as tabel2
where tabel2.kode = tabel1.kode
group by tabel2.kode);

select * from tbl_mhs


where tgl_lahir >
(select tgl_lahir from tbl_mhs where nama='yohana');

select * from tbl_mhs


where tgl_lahir =
(select tgl_lahir from tbl_mhs where nama='yohana')
and
nama <> 'yohana';

Anda mungkin juga menyukai