SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
MODUL SQL
      MENGGUNAKAN SQL SERVER 2000
             -------------------------
“BESERTA CONTOH IMPLEMENTASI DI APLIKASI
              BERBASIS WEB
                     (PHP)”




            by Abdul Malik Ikhsan

            samsonasik@gmail.com

        http://samsonasik.wordpress.com


         ==================
Hal. 1




TEORI
1. Pengenalan Query
        SQL (Structure Query Language) adalah bahasa yang digunakan untuk
melayani relasional system database.
SQL secara garis besar terdiri dari 4 macam, yaitu :
a. DDL (Data Definition Language)
        DDL adalah suatu pernyataan untuk mendefinisikan struktur atau skema
database. Contoh :
• Create , untuk membuat object dalam database, bisa berupa table, view,
    procedure, function, trigger, ataupun package (oracle). Contoh :
    create table mahasiswa (npm char(7) not null primary key,nama char(30),
    alamat char(50));
• Alter, untuk mengubah structur dari suatu objek dalam database.contoh :
    alter table mahasiswa add email char(30)
• Drop,         untuk       menghapus       objek    dalam database,   contoh:
    drop table mahasiswa;
• Truncate, untuk menghapus/membersihkan isi table beserta alokasi space yang
    ada                di               dalamnya,          contoh            :
    truncate table mahasiswa
• Comment, memberikan keterangan/komentar pada ke dalam kamus data.
    berisi deskripsi dari sebuah objek dalam database.
• Rename, mengganti nama objek dalam database.(Mysql, Oracle)

b. DML (Data Manipulation Language)
        DML adalah pernyataan yang digunakan untuk mengorganisir data dengan
menggunakan skema objek.
• Select,        untuk     menyeleksi       data      dari      dalam       database.
    contoh : select npm, nama, alamat from mahasiswa;
• Insert,       untuk    menginputkan    record     ke     dalam      suatu      table.
    contoh : insert into mahasiswa(npm,nama,alamat) values(‘0401034’,’Abdul
    Malik Ikhsan’,’Jalan Jakarta No. 28’)
• Update, untuk melakukan update dari table yang sudah dibuat.
    contoh : update mahasiswa set npm=’001’ where npm=’0401034’;
• Delete, untuk menghapus isi record baik semuanya ataupun sebagian dari suatu
    table,                                 cotoh                                      :
    -delete       from     mahasiswa         (menghapus        semua        isi       )
    -delete from mahasiswa where npm = ‘001’(hanya pada kondisionalnya saja).
• Merge, penggabungan update, insert, delete pada suatu table berdasarkan kondisi
    yang                                                                        cocok.
    (Oracle).
• EXEC,           memanggil      procedure       yang      telah      kita        buat.
    contoh           :      kita        buat          procedure          seleksimhs:
    create procedure seleksimhs @npm char(7) as select * from mahasiswa
    where npm=@npm.
• cara eksekusi                                                                       :
        EXEC seleksimhs ‘001’;
Hal. 2


c. DCL (Data Control Language)

       Terdiri dari 2 statement, yaitu Grant, Revoke, dan DENY, Grant untuk
memberikan hak akses, dan Revoke untuk membuang hak yang telah dilarang dengan
perintah Deny atau hak yang telah diberikan oleh perintah GRANT, sedangkan Deny.
Contoh GRANT :
GRANT INSERT, UPDATE, DELETE On mahasiswa To public

Contoh REVOKE
Revoke SELECT On mahasiswa To Public

Contoh DENY
DENY SELECT On mahasiswa To Public

d. TCL (Transaction Control)

         Pernyataan untuk mengelola perubahan yang dilakukan oleh DML.

     COMMIT => menyimpan hasil perintah
     SAVEPOINT => identifikasi point transaksi yang akan digunakan nantinya.
     ROLLBACK => Restore database ke kondisi commit terakhir.
     SET TRANSACTION => mengubah level transaksi.
Hal. 3


PERCOBAAN PRAKTIKUM (Latihan-1) :

Persiapan :
•   Aktifkan Service Manager Ms-SQL Servernya
•   Aktifkan Query Analizer
•   Ketikkan perintah-perintah di bawah ini, dan amati hasilnya.

1. Membuat database dengan nama “akademik”,ketik :

create database akademik
[Tekan F5, lihat hasilnya]

2. Mengaktifkan database akademik, ketik :

use akademik

[Tekan F5, lihat hasilnya]

3. Membuat   struktur   data/tabel   dengan   nama    tabel
   “mahasiswa” dan field serta type data-nya, ketik :

create table mahasiswa(npm char(7) not null primary
key,nama_mahasiswa char(40), alamat char(50))

4. Mengisi nilai data kedalam database akademik untuk
   tabel mahasiswa, ketik : (dalam contoh ini diberikan
   perintah untuk mengisi sebanyak 3 record/baris data,
   Anda isikan 10 record)

insert into mahasiswa(npm,nama_mahasiswa,alamat)
values('0401034','Abdul Malik Ikhsan',
'Jalan Jakarta No. 28')

insert into mahasiswa(npm,nama_mahasiswa,alamat)
values('0501021','Moch. Ali Aljauhari',
'Jalan Cicadas No. 22')

insert into mahasiswa(npm,nama_mahasiswa,alamat)
values('0402002','Moh. Ryan Dirhamsyah',
'Jalan Gagak No. 55')

5. Menampilkan seluruh data dari tabel mahasiswa, ketik :

select * from mahasiswa

6. Menampilkan data NPM dari tabel mahasiswa, ketik :

select npm from mahasiswa
Hal. 4

7. Menampilkan data NPM, Nama Mahasiswa dan Alamat dari
Tabel mahasiswa, ketik :

select npm,nama_mahasiswa,alamat from mahasiswa

8.   Menampilkan   data     mahasiswa    yang     NPM-nya        hanya
“0401034”, ketik :

select * from mahasiswa where npm = '0401034'

8. Menampilkan data       mahasiswa   yang    NPM-nya    mengandung
nilai “040”, ketik :

select * from mahasiswa where npm like '%040%'

9. Menampilkan data       mahasiswa   yang     NPM-nya    berawalan
nilai “040”, ketik :

select * from mahasiswa where npm like '040%'

10. Menampilkan data mahasiswa yang NAMA-nya mengandung
nilai “Mo”, ketik :

select * from mahasiswa where nama_mahasiswa like '%Mo%'

11. Mengubah struktur tabel untuk field nama_mahasiswa
dari type char(40) menjadi type char(60)

alter   table   mahasiswa     alter     column     nama_mahasiswa
char(60)

12. Mengubah struktur tabel untuk            menambah    field   baru
yaitu email dengan type char(20) :

alter table mahasiswa add email char(20)

select * from mahasiswa

13. Mengubah nilai data email dari tabel mahasiswa untuk
data NPM tertentu :

update mahasiswa set email ='samsonasik@gmail.com' where
npm='0401034'

select * from mahasiswa

14. Menghapus data mahasiswa yang NPM-nya tertentu :

delete from mahasiswa where npm='0402002'
Hal. 5

15. Menghapus       field   yang    menampung     seluruh    isi   data
email:

alter table mahasiswa drop column email

select * from mahasiswa


Ketikkan perintah-perintah di bawah ini, artikan dan amati hasilnya.

/* -------------------- */

create table matakuliah(kdmk char(7) not null primary
key,nama_matakuliah char(50),sks int)

insert into matakuliah(kdmk,nama_matakuliah,sks)
values('a001','SQL',3)

insert into matakuliah(kdmk,nama_matakuliah,sks)
values('a002','PHP',4)

select * from matakuliah

/* untuk penerapan update,delete,alter dapat diterapkan
seperti pada tabel mahasiswa :) */

create table dosen(kd_dosen char(7) not null primary
key,nama_dosen char(30), alamat_dosen char(40))

insert into dosen(kd_dosen,nama_dosen,alamat_dosen)
values('d001','Andi Supriatna','Jalan Labuhan')


insert into dosen(kd_dosen,nama_dosen,alamat_dosen)
values('d002','Anton Budiatmadja','Jalan Jakarta No. 40')

select * from dosen

/* untuk penerapan update,delete,alter dapat diterapkan
seperti pada tabel mahasiswa :) */

create table perkuliahan(id_kuliah int not null primary
key,npm char(7),semester char(2))

insert into perkuliahan(id_kuliah,npm,semester)
values(1,'0401034','1')

/* untuk penerapan update,delete,alter dapat diterapkan
seperti pada tabel mahasiswa :) */
Hal. 6

create table nilai(id_nilai int,kd_mk char(7),kd_dosen
char(7), nilai char(2));

insert into nilai(id_nilai,kd_mk,kd_dosen,nilai)
values(1,'a001','d001','A')

insert into nilai(id_nilai,kd_mk,kd_dosen,nilai)
values(1,'a002','d002','B')

select * from nilai;

/* gabungkan seluruh tabel
     kita akan mencoba menampilkan nama mahasiswa, nama
matakuliah yang diambil,
     dan nilai yang didapat, beserta nama dosen nya...,
tentunya
     yang id_kuliahnya = id_nilai :)

     anggap tabel mahasiswa adalah tabel a, tabel
matakuliah adalah tabel b,
     tabel dosen adalah tabel c, tabel perkuliahan adalah
tabel d,
     tabel nilai adalah tabel e
*/

select a.nama_mahasiswa, b.nama_matakuliah, e.nilai,
c.nama_dosen
from mahasiswa a, matakuliah b, nilai e, dosen c,
perkuliahan d
where a.npm=d.npm and b.kdmk=e.kd_mk and
e.id_nilai=d.id_kuliah
and e.kd_dosen=c.kd_dosen
Hal. 7




CONTOH IMPLEMENTASI SQL di PHP

1. Atur konfigurasi di php.ini, uncomment yang ada hubungannya dengan mssql


   ;extension=php_msql.dll
   extension=php_mssql.dll
   extension=php_mysql.dll
   extension=php_mysqli.dll
   ;extension=php_netools.dll
   ;extension=php_ntuser.dll
   ;extension=php_oracle.dll
   ;extension=php_oci8.dll
   ;extension=php_oggvorbis.dll
   ;extension=php_openssl.dll
   ;extension=php_parsekit.dll
   extension=php_pdf.dll
   extension=php_pdo.dll
   ;extension=php_pdo_firebird.dll
   extension=php_pdo_mssql.dll
   extension=php_pdo_mysql.dll
   ;extension=php_pdo_oci.dll




2. Buat File konfigurasi

<? //conf.php ?>
<?
     $host=”glserver”;
     $user=””;
     $pass=””;
?>

<? //dbase.php
     $dbase="akademik";
?>

<? //mssqldb.class.php
     class mssqldb{
     var $host,$user,$pass,$db,$query;
          function konek(){
               include "conf.php";
               $this->host=$host;
               $this->user=$user;
               $this->pass=$pass;
Hal. 8

               return     mssql_connect($this->host,$this-
>user,$this->pass);
          }
          function getdb(){
               include "dbase.php";
               $this->dbase=$dbase;
               return mssql_select_db($this->dbase);
          }
          function getquery($query){
               return mssql_query($query);
          }
          function getarray($query){
               return mssql_fetch_array($query);
          }
     }
?>

<? include "mssqldb.class.php" ?>
<? //implementasi.class.php
     class implementasi extends mssqldb{
          var $query,$id;
          function seleksimhs($id){
               return   $this->getquery("select   *   from
mahasiswa where npm='$id'");
          }
     }
?>

3. Tampilkan...
<? //mahasiswa.php
     include "implementasi.class.php";
     //membuat objek $o yang mengimplementasikan semua
     //yang ada dalam class mssqldb dan implementasi.

         $o=new implementasi();
         $o->konek();
         $o->getdb();

?>
<table border=1>
     <tr>
           <td>No. </td>
           <td>Npm </td>
           <td>Nama Mahasiswa</td>
           <td>Alamat</td>
     </tr>
<?
     $no=0;
     $q=$o->seleksimhs("0401034");
     while ($row=$o->getarray($q)){ $no++; //start while
Hal. 9

?>
<tr>
              <td><?=$no?>. </td>
              <td><?=$row['npm']?> </td>
              <td><?=$row['nama_mahasiswa']?></td>
              <td><?=$row['alamat']?></td>
</tr>
<? }
         //end of while
 ?>
</table>

Más contenido relacionado

Destacado

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

Destacado (20)

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 

Modul 1 sql_server

  • 1. MODUL SQL MENGGUNAKAN SQL SERVER 2000 ------------------------- “BESERTA CONTOH IMPLEMENTASI DI APLIKASI BERBASIS WEB (PHP)” by Abdul Malik Ikhsan samsonasik@gmail.com http://samsonasik.wordpress.com ==================
  • 2. Hal. 1 TEORI 1. Pengenalan Query SQL (Structure Query Language) adalah bahasa yang digunakan untuk melayani relasional system database. SQL secara garis besar terdiri dari 4 macam, yaitu : a. DDL (Data Definition Language) DDL adalah suatu pernyataan untuk mendefinisikan struktur atau skema database. Contoh : • Create , untuk membuat object dalam database, bisa berupa table, view, procedure, function, trigger, ataupun package (oracle). Contoh : create table mahasiswa (npm char(7) not null primary key,nama char(30), alamat char(50)); • Alter, untuk mengubah structur dari suatu objek dalam database.contoh : alter table mahasiswa add email char(30) • Drop, untuk menghapus objek dalam database, contoh: drop table mahasiswa; • Truncate, untuk menghapus/membersihkan isi table beserta alokasi space yang ada di dalamnya, contoh : truncate table mahasiswa • Comment, memberikan keterangan/komentar pada ke dalam kamus data. berisi deskripsi dari sebuah objek dalam database. • Rename, mengganti nama objek dalam database.(Mysql, Oracle) b. DML (Data Manipulation Language) DML adalah pernyataan yang digunakan untuk mengorganisir data dengan menggunakan skema objek. • Select, untuk menyeleksi data dari dalam database. contoh : select npm, nama, alamat from mahasiswa; • Insert, untuk menginputkan record ke dalam suatu table. contoh : insert into mahasiswa(npm,nama,alamat) values(‘0401034’,’Abdul Malik Ikhsan’,’Jalan Jakarta No. 28’) • Update, untuk melakukan update dari table yang sudah dibuat. contoh : update mahasiswa set npm=’001’ where npm=’0401034’; • Delete, untuk menghapus isi record baik semuanya ataupun sebagian dari suatu table, cotoh : -delete from mahasiswa (menghapus semua isi ) -delete from mahasiswa where npm = ‘001’(hanya pada kondisionalnya saja). • Merge, penggabungan update, insert, delete pada suatu table berdasarkan kondisi yang cocok. (Oracle). • EXEC, memanggil procedure yang telah kita buat. contoh : kita buat procedure seleksimhs: create procedure seleksimhs @npm char(7) as select * from mahasiswa where npm=@npm. • cara eksekusi : EXEC seleksimhs ‘001’;
  • 3. Hal. 2 c. DCL (Data Control Language) Terdiri dari 2 statement, yaitu Grant, Revoke, dan DENY, Grant untuk memberikan hak akses, dan Revoke untuk membuang hak yang telah dilarang dengan perintah Deny atau hak yang telah diberikan oleh perintah GRANT, sedangkan Deny. Contoh GRANT : GRANT INSERT, UPDATE, DELETE On mahasiswa To public Contoh REVOKE Revoke SELECT On mahasiswa To Public Contoh DENY DENY SELECT On mahasiswa To Public d. TCL (Transaction Control) Pernyataan untuk mengelola perubahan yang dilakukan oleh DML. COMMIT => menyimpan hasil perintah SAVEPOINT => identifikasi point transaksi yang akan digunakan nantinya. ROLLBACK => Restore database ke kondisi commit terakhir. SET TRANSACTION => mengubah level transaksi.
  • 4. Hal. 3 PERCOBAAN PRAKTIKUM (Latihan-1) : Persiapan : • Aktifkan Service Manager Ms-SQL Servernya • Aktifkan Query Analizer • Ketikkan perintah-perintah di bawah ini, dan amati hasilnya. 1. Membuat database dengan nama “akademik”,ketik : create database akademik [Tekan F5, lihat hasilnya] 2. Mengaktifkan database akademik, ketik : use akademik [Tekan F5, lihat hasilnya] 3. Membuat struktur data/tabel dengan nama tabel “mahasiswa” dan field serta type data-nya, ketik : create table mahasiswa(npm char(7) not null primary key,nama_mahasiswa char(40), alamat char(50)) 4. Mengisi nilai data kedalam database akademik untuk tabel mahasiswa, ketik : (dalam contoh ini diberikan perintah untuk mengisi sebanyak 3 record/baris data, Anda isikan 10 record) insert into mahasiswa(npm,nama_mahasiswa,alamat) values('0401034','Abdul Malik Ikhsan', 'Jalan Jakarta No. 28') insert into mahasiswa(npm,nama_mahasiswa,alamat) values('0501021','Moch. Ali Aljauhari', 'Jalan Cicadas No. 22') insert into mahasiswa(npm,nama_mahasiswa,alamat) values('0402002','Moh. Ryan Dirhamsyah', 'Jalan Gagak No. 55') 5. Menampilkan seluruh data dari tabel mahasiswa, ketik : select * from mahasiswa 6. Menampilkan data NPM dari tabel mahasiswa, ketik : select npm from mahasiswa
  • 5. Hal. 4 7. Menampilkan data NPM, Nama Mahasiswa dan Alamat dari Tabel mahasiswa, ketik : select npm,nama_mahasiswa,alamat from mahasiswa 8. Menampilkan data mahasiswa yang NPM-nya hanya “0401034”, ketik : select * from mahasiswa where npm = '0401034' 8. Menampilkan data mahasiswa yang NPM-nya mengandung nilai “040”, ketik : select * from mahasiswa where npm like '%040%' 9. Menampilkan data mahasiswa yang NPM-nya berawalan nilai “040”, ketik : select * from mahasiswa where npm like '040%' 10. Menampilkan data mahasiswa yang NAMA-nya mengandung nilai “Mo”, ketik : select * from mahasiswa where nama_mahasiswa like '%Mo%' 11. Mengubah struktur tabel untuk field nama_mahasiswa dari type char(40) menjadi type char(60) alter table mahasiswa alter column nama_mahasiswa char(60) 12. Mengubah struktur tabel untuk menambah field baru yaitu email dengan type char(20) : alter table mahasiswa add email char(20) select * from mahasiswa 13. Mengubah nilai data email dari tabel mahasiswa untuk data NPM tertentu : update mahasiswa set email ='samsonasik@gmail.com' where npm='0401034' select * from mahasiswa 14. Menghapus data mahasiswa yang NPM-nya tertentu : delete from mahasiswa where npm='0402002'
  • 6. Hal. 5 15. Menghapus field yang menampung seluruh isi data email: alter table mahasiswa drop column email select * from mahasiswa Ketikkan perintah-perintah di bawah ini, artikan dan amati hasilnya. /* -------------------- */ create table matakuliah(kdmk char(7) not null primary key,nama_matakuliah char(50),sks int) insert into matakuliah(kdmk,nama_matakuliah,sks) values('a001','SQL',3) insert into matakuliah(kdmk,nama_matakuliah,sks) values('a002','PHP',4) select * from matakuliah /* untuk penerapan update,delete,alter dapat diterapkan seperti pada tabel mahasiswa :) */ create table dosen(kd_dosen char(7) not null primary key,nama_dosen char(30), alamat_dosen char(40)) insert into dosen(kd_dosen,nama_dosen,alamat_dosen) values('d001','Andi Supriatna','Jalan Labuhan') insert into dosen(kd_dosen,nama_dosen,alamat_dosen) values('d002','Anton Budiatmadja','Jalan Jakarta No. 40') select * from dosen /* untuk penerapan update,delete,alter dapat diterapkan seperti pada tabel mahasiswa :) */ create table perkuliahan(id_kuliah int not null primary key,npm char(7),semester char(2)) insert into perkuliahan(id_kuliah,npm,semester) values(1,'0401034','1') /* untuk penerapan update,delete,alter dapat diterapkan seperti pada tabel mahasiswa :) */
  • 7. Hal. 6 create table nilai(id_nilai int,kd_mk char(7),kd_dosen char(7), nilai char(2)); insert into nilai(id_nilai,kd_mk,kd_dosen,nilai) values(1,'a001','d001','A') insert into nilai(id_nilai,kd_mk,kd_dosen,nilai) values(1,'a002','d002','B') select * from nilai; /* gabungkan seluruh tabel kita akan mencoba menampilkan nama mahasiswa, nama matakuliah yang diambil, dan nilai yang didapat, beserta nama dosen nya..., tentunya yang id_kuliahnya = id_nilai :) anggap tabel mahasiswa adalah tabel a, tabel matakuliah adalah tabel b, tabel dosen adalah tabel c, tabel perkuliahan adalah tabel d, tabel nilai adalah tabel e */ select a.nama_mahasiswa, b.nama_matakuliah, e.nilai, c.nama_dosen from mahasiswa a, matakuliah b, nilai e, dosen c, perkuliahan d where a.npm=d.npm and b.kdmk=e.kd_mk and e.id_nilai=d.id_kuliah and e.kd_dosen=c.kd_dosen
  • 8. Hal. 7 CONTOH IMPLEMENTASI SQL di PHP 1. Atur konfigurasi di php.ini, uncomment yang ada hubungannya dengan mssql ;extension=php_msql.dll extension=php_mssql.dll extension=php_mysql.dll extension=php_mysqli.dll ;extension=php_netools.dll ;extension=php_ntuser.dll ;extension=php_oracle.dll ;extension=php_oci8.dll ;extension=php_oggvorbis.dll ;extension=php_openssl.dll ;extension=php_parsekit.dll extension=php_pdf.dll extension=php_pdo.dll ;extension=php_pdo_firebird.dll extension=php_pdo_mssql.dll extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll 2. Buat File konfigurasi <? //conf.php ?> <? $host=”glserver”; $user=””; $pass=””; ?> <? //dbase.php $dbase="akademik"; ?> <? //mssqldb.class.php class mssqldb{ var $host,$user,$pass,$db,$query; function konek(){ include "conf.php"; $this->host=$host; $this->user=$user; $this->pass=$pass;
  • 9. Hal. 8 return mssql_connect($this->host,$this- >user,$this->pass); } function getdb(){ include "dbase.php"; $this->dbase=$dbase; return mssql_select_db($this->dbase); } function getquery($query){ return mssql_query($query); } function getarray($query){ return mssql_fetch_array($query); } } ?> <? include "mssqldb.class.php" ?> <? //implementasi.class.php class implementasi extends mssqldb{ var $query,$id; function seleksimhs($id){ return $this->getquery("select * from mahasiswa where npm='$id'"); } } ?> 3. Tampilkan... <? //mahasiswa.php include "implementasi.class.php"; //membuat objek $o yang mengimplementasikan semua //yang ada dalam class mssqldb dan implementasi. $o=new implementasi(); $o->konek(); $o->getdb(); ?> <table border=1> <tr> <td>No. </td> <td>Npm </td> <td>Nama Mahasiswa</td> <td>Alamat</td> </tr> <? $no=0; $q=$o->seleksimhs("0401034"); while ($row=$o->getarray($q)){ $no++; //start while
  • 10. Hal. 9 ?> <tr> <td><?=$no?>. </td> <td><?=$row['npm']?> </td> <td><?=$row['nama_mahasiswa']?></td> <td><?=$row['alamat']?></td> </tr> <? } //end of while ?> </table>