TELAH DIBUKA !!!

Toko Ebook Tutorial "RosihanAri.Net"


Free Ebook Tutorial from Rosihan Ari's Blog

Tutorial Javascript | Tutorial PHP Dasar | Tutorial AJAX | Tutorial CSS | Tutorial FPDF | Tutorial Wordpress



Slot iklan tersedia, pasang iklan di atas

Ebook yang direkomendasikan untuk Anda
Kunjungi Toko Ebook RosihanAri.Net

Cara Mengubah Struktur Tabel dengan Query SQL


February 15th, 2009 | by rosihanari | Cetak Artikel Cetak Artikel

Dalam artikel ini, saya akan coba bahas dalam blog ini mengenai bagaimana cara mengubah struktur tabel menggunakan query SQL. Meskipun untuk mengubah struktur tabel, khususnya pada MySQL ini, dapat kita lakukan dengan mudah menggunakan tool atau interface seperti PhpMyAdmin atau Navicat atau yang lain, namun… sejenak kita lupakan tool-tool tersebut. Mengapa demikian? yap…. kita mungkin tidak akan menduga, ketika di suatu saat kita dipaksa tidak boleh menggunakan tool seperti di atas dan mau tidak mau harus menggunakan SQL command untuk mengatur administrasi database. Boleh saja kita menggunakan tool, namun basic commandsnya jangan sampai diabaikan. Bukan begitu mbak Elis? (salah satu member saya) :-) Kebetulan beliau ini sedang bingung karena ada tugas dari dosennya. Mudah-mudahan dari postingan artikel ini menjadi tidak bingung lagi :-)

OK… lanjut…

Ada beberapa proses yang termasuk dalam pengubahan struktur dalam tabel, yaitu :

  • menambah field baru dalam suatu tabel,
  • mengubah nama field,
  • mengubah tipe data field,
  • membuat primary key
  • mengubah properti field,
  • menghapus primary key,

Nah.. akan kita bahas satu persatu proses di atas. Mmm… tapi enaknya kita buat dalam studi kasus saja ya.

Andaikan kita sebelumnya telah memiliki tabel dengan struktur sebagai berikut:

CREATE TABLE mhs
(
  nim varchar(8),
  nama varchar(30),
  tgllahir varchar(10)
)

Trus… nantinya kita akan ubah struktur tabel yang telah kita miliki di atas.

Menambah Field Baru

Sebagai contoh misalkan kita akan menambahkan field baru dengan nama ‘asalSekolah’ bertipe Varchar(20) sebagai field terakhir dari tabel, perintah SQL nya adalah

ALTER TABLE mhs ADD asalSekolah VARCHAR(20);

Anda juga dapat menyisipkan field ‘asalSekolah’ tersebut sebagai field pertama dalam tabel ‘mhs’ dengan perintah SQL sbb:

ALTER TABLE mhs ADD asalSekolah VARCHAR(20) FIRST;

Bagaimana bila kita ingin field ‘asalSekolah’ ini diletakkan setelah field ‘nama’? Gampang sekali caranya, cukup berikan perintah berikut ini

ALTER TABLE mhs ADD asalSekolah VARCHAR(20) AFTER nama;

Mengubah Nama Field

Sebagai contoh misalkan kita akan mengubah nama field ‘nama’ menjadi ‘namaMhs’. Perhatikan perintah SQL berikut ini

ALTER TABLE mhs CHANGE nama namaMhs VARCHAR(8);

Mengubah Tipe Data Field

Sebagai contoh misalkan kita akan mengubah tipe data dari field ‘tgllahir’ menjadi DATE, maka perintah SQL nya:

ALTER TABLE mhs CHANGE tgllahir tgllahir DATE;

Catatan:
Perhatikan perintah di atas bahwa field ‘tgllahir’ ditulis 2 kali. Hal ini dilakukan apabila tidak ada perubahan nama field.

Membuat Primary Key

Misalkan kita akan membuat field ‘nim’ sebagai kunci atau primary key nya. Maka perintahnya adalah:

ALTER TABLE mhs ADD PRIMARY KEY (nim);

Bagaimana bila kita ingin lebih dari satu field sebagai kuncinya sekaligus? Ya… mudah saja tinggal berikan perintah SQL seperti ini

ALTER TABLE namatabel ADD PRIMARY KEY (field1, field2, ...);

Mengubah Properti Field

Yang dimaksud mengubah properti field, misalnya kita menambahkan auto increment pada suatu field atau kita mengatur suatu field tidak boleh NULL (berisi data kosong). Sebagai contoh misalnya kita akan memberikan auto increment pada field ‘nim’ (meskipun NIM menggunakan auto increment itu tidak boleh). Ingat ya… untuk auto increment ini hanya dapat diberikan pada field yang bertipe INTEGER saja. Oleh karena itu ketika akan memberikan auto increment, maka sekaligus kita ubah tipe data ‘nim’ menjadi INTEGER. Satu lagi yang penting bahwa field yang akan diberikan auto increment haruslah berupa kunci (key). Oleh karena itu kita sebelumnya harus sudah memilih ‘nim’ sebagai kunci nya. Berikut ini adalah perintah SQL untuk memberikan auto increment pada ‘nim’ dengan asumsi field ini sudah menjadi kunci.

ALTER TABLE mhs CHANGE nim nim INT AUTO_INCREMENT;

Sedangkan berikut ini perintah SQL untuk menghapus auto increment dari yang sudah kita set di atas

ALTER TABLE mhs CHANGE nim nim INT;

Kemudian, bagaimana bila kita ingin supaya suatu field tidak boleh kosong (NULL) datanya atau dengan kata lain, data untuk field tersebut harus terisi? Mudah saja, kita hanya tambahkan properti NOT NULL pada field yang kita inginkan. Misalkan kita set supaya field ‘tgllahir’ tidak boleh kosong, perintah SQL nya adalah:

ALTER TABLE mhs CHANGE tgllahir tgllahir DATE NOT NULL;

Kebalikannya, bagaimana bila kita ingin mengembalikan ‘tgllahir’ ini memperbolehkan data kosong? Ya.. cukup ubah dari NOT NULL menjadi NULL.

ALTER TABLE mhs CHANGE tgllahir tgllahir DATE NULL;

Menghapus Primary Key

Mmm.. untuk menghapus primary key, kita hanya bisa menghapus semuanya (tidak satu persatu) apabila terdapat lebih dari satu primary key. Adapun perintah untuk menghapus primary key yang ada dalam tabel ‘mhs’ adalah:

ALTER TABLE mhs DROP PRIMARY KEY;

OK… mudah-mudahan artikel ini berguna bagi Anda, khususnya mbak Elis ya :-) Sudah tidak bingung kan mbak?


Baca Juga Artikel Terkait
Mengubah Tabel Tipe MyISAM ke InnoDB
Relasi Tabel dengan Substring di SQL
Perintah SQL (SELECT) untuk Multi Tabel (Bag. 1)
Penggunaan Subquery dalam Query SQL (Bag. 1)
Script PHP untuk Menampilkan Data dalam Tabel dengan Warna Baris Selang-seling



Slot iklan tersedia, pasang iklan di atas


Kata kunci: alter - query - SQL -


Ada 31 komentar dalam artikel ini.



  1. obet says:

    Mau cari tau gmn caanya kirim email lewat ms acces, karena data emailnya serta databasenya ada di ms acces. thx yaa

  2. AMIN says:

    Makasih ilmunya pak…

  3. dayanti says:

    Maaf pak, saya ada beberapa pertanyaan :
    1. ada 2 user database user A dan User B mengakses tabel “employees” yg terdapat dlm databes “Northwind” dlm RDBS SQL Server. Ketika user A melakukan perubahan data (update) pd tabel “employees”, nilai terbaru hasil perubahan yg dilakukan oleh user A tdk terlihat (invinsible) oleh user B ketika user B melakukan perintah SELECT pd tabel “employees”. mengapa bisa terjadi ya pak ?
    2. apabila kita akan menerapkan constraint terhadap database dimana pada awalnya tabel-tabel yg dibuat blm memiliki constraint, sementara data2 yg terdapat didlm basis data tersebut sudah banyak. tahapan apa yg harus kita lakukan agar kita tdk kehilangan data tersebut dan dpt dilakukan secaara efisien.
    Terima kasih banyak atas bantuannya.

  4. choirudin says:

    Salam kenal pak, mohon bantuannya, cara merubah isi kolom A pada tabel N = slow, jika isi kolom B pada tabel M = 1 between 10.

  5. Nurjaman says:

    MAAF GIMANA MENJALANKA UPDATE QUERY????

  6. HIDAYAT says:

    pagi gan…numpang copy ye..

  7. HIDAYAT says:

    kren blog na…mmpir k sya ya gab…

  8. ROZAK says:

    SAYA TRBIASA MEMBUAT DATA BASE DENGAN ACCES, AKAN TETAPI KETIKA SAYA MENCOBA DENGAN SQL, QUERY YANG SAYA BUAT TIDAK DAPAT DIMASUKKAN KE DALAM QUERY DI SQL, KENAPA YA…?

  9. ROZAK says:

    BAGAIMANA MENGUBAH QUERI DALAM ACCES AGAR BISA DIGUNAKAN DALAM SQL



 

Komentar/pertanyaan Anda!

Mohon maaf, komentar/pertanyaan yang menggunakan email palsu atau komentar bernada negatif, cemooh, umpatan, cacian atau sejenisnya secara otomatis akan terhapus karena dianggap spam dan tidak akan tampil

Dimohon jangan pula memasukkan code program dalam bentuk apapun ke dalam komentar karena akan dianggap spam.

Mohon maaf jika seandainya ada beberapa pertanyaan Anda yang tidak direspon atau ditanggapi mengingat banyaknya komentar yang masuk dan keterbatasan kemampuan/ilmu saya dalam menjawab pertanyaan satu persatu. Saya harap Anda bisa memahami dan memakluminya.

Semua komentar atau pertanyaan yg masuk tidak akan langsung tampil di halaman ini, karena akan dimoderasi dahulu.


*