SMK TELKOM MALANG TIPE DATA ORACLE : TIPE DATA TIPE DATA ORACLE

17
S Tipe-tipe Data Pada Oracle TIPE DATA ORACL Data type (tipe data) adalah k suatu informasi atau data terte dimanipulasi oleh Oracle mem masing-masing. Tipe data dar diasosiasikan dengan nilai pro Properti ini menyebabkan nila diperlakukan berbeda dengan Oracle. Misalnya, Anda dapat menam tidak dapat melakukan hal yan tabel atau cluster, Anda harus tersebut. Bila Anda membuat disimpan, Anda harus menent akan menentukan domain nila yang dapat dimiliki procedure dapat menerima nilai 29 Feb ( Setiap nilai akan ditempatkan kolom tersebut. Misalnya, jika Anda memasukkan ’01-JAN-9 karakter string ’01-JAN-98′ se tersebut telah diterjemahkan d Oracle Database menyediaka jenis yang ditentukan oleh pen SMK TELKOM MALANG TIPE DATA e, SQLServer, MySQL, Access LE : klasifikasi atau jenis dari entu. Setiap nilai yang miliki sebuah tipe data ri sebuah nilai tersebut operti yang diset tetap. ai -nilai dari satu tipe data n nilai-nilai lain oleh mbahkan besaran nilai pada tipe data NUMB ng sama pada tipe data RAW. Bila Anda me s menentukan tipe data untuk masing-masin sebuah procedure atau function yang kemu tukan tipe data untuk setiap argumennya. T ai disetiap kolom yang berisi argumen masin atau function tersebut. Sebagai contoh, kol (kecuali untuk tahun kabisat) atau nilai 2 ata dalam kolom dengan mengasumsikan tipe a 98 ‘ ke dalam kolom DATE, maka Oracle me ebagai nilai DATE setelah memverifikasi kar dalam format tanggal yang valid. an sejumlah built-in tipe data serta beberapa ngguna, yang dapat digunakan sebagai tipe BER, tetapi embuat sebuah ng kolom udian akan Tipe data ini ng-masing lom DATE tidak au ‘sepatu’. data dari emperlakukan rakter string a kategori untuk e data.

Transcript of SMK TELKOM MALANG TIPE DATA ORACLE : TIPE DATA TIPE DATA ORACLE

SMK TELKOM MALANG

Tipe-tipe Data Pada Oracle, SQLServer, MySQL, Access

TIPE DATA ORACLE :Data type (tipe data) adalah klasifikasi

suatu informasi atau data tertentu. Setiap nilai yang

dimanipulasi oleh Oracle memiliki sebuah tipe data

masing-masing. Tipe data dari sebuah nilai tersebut

diasosiasikan dengan nilai properti yang diset tetap.

Properti ini menyebabkan nilai

diperlakukan berbeda dengan nilai

Oracle.

Misalnya, Anda dapat menambatidak dapat melakukan hal yang sama pada tipe data RAW. Bila Anda membuat sebuah tabel atau cluster, Anda harus menentukan tipe data untuk masingtersebut. Bila Anda membuat sebuah procedure atadisimpan, Anda harus menentukan tipe data untuk setiap argumennya. Tipe data ini akan menentukan domain nilai disetiap kolom yang berisi argumen masingyang dapat dimiliki procedure atau function tersebut. Sebagai contodapat menerima nilai 29 Feb (kecuali untuk tahun kabisat) atau nilai 2 atau ‘sepatu’. Setiap nilai akan ditempatkan dalam kolom dengan mengasumsikan tipe data dari kolom tersebut. Misalnya, jikaAnda memasukkan ’01-JAN-98 ‘ ke dalam kolkarakter string ’01-JAN-98′ sebagai nilai DATE setelah memverifikasi karakter string tersebut telah diterjemahkan dalam format tanggal yang valid.

Oracle Database menyediakan sejumlah builtjenis yang ditentukan oleh pengguna, yang dapat digunakan sebagai tipe data.

SMK TELKOM MALANG

TIPE DATAtipe Data Pada Oracle, SQLServer, MySQL, Access

TIPE DATA ORACLE :Data type (tipe data) adalah klasifikasi atau jenis dari

suatu informasi atau data tertentu. Setiap nilai yang

dimanipulasi oleh Oracle memiliki sebuah tipe data

masing. Tipe data dari sebuah nilai tersebut

diasosiasikan dengan nilai properti yang diset tetap.

Properti ini menyebabkan nilai-nilai dari satu tipe data

diperlakukan berbeda dengan nilai-nilai lain oleh

Misalnya, Anda dapat menambahkan besaran nilai pada tipe data NUMBER, tetapi tidak dapat melakukan hal yang sama pada tipe data RAW. Bila Anda membuat sebuah tabel atau cluster, Anda harus menentukan tipe data untuk masing-masing kolom tersebut. Bila Anda membuat sebuah procedure atau function yang kemudian akan disimpan, Anda harus menentukan tipe data untuk setiap argumennya. Tipe data ini akan menentukan domain nilai disetiap kolom yang berisi argumen masingyang dapat dimiliki procedure atau function tersebut. Sebagai contoh, kolom DATE tidak dapat menerima nilai 29 Feb (kecuali untuk tahun kabisat) atau nilai 2 atau ‘sepatu’. Setiap nilai akan ditempatkan dalam kolom dengan mengasumsikan tipe data dari kolom tersebut. Misalnya, jika

98 ‘ ke dalam kolom DATE, maka Oracle memperlakukan ′ sebagai nilai DATE setelah memverifikasi karakter string

tersebut telah diterjemahkan dalam format tanggal yang valid.

Oracle Database menyediakan sejumlah built-in tipe data serta beberapa katjenis yang ditentukan oleh pengguna, yang dapat digunakan sebagai tipe data.

hkan besaran nilai pada tipe data NUMBER, tetapi tidak dapat melakukan hal yang sama pada tipe data RAW. Bila Anda membuat sebuah

masing kolom u function yang kemudian akan

disimpan, Anda harus menentukan tipe data untuk setiap argumennya. Tipe data ini akan menentukan domain nilai disetiap kolom yang berisi argumen masing-masing

h, kolom DATE tidak dapat menerima nilai 29 Feb (kecuali untuk tahun kabisat) atau nilai 2 atau ‘sepatu’. Setiap nilai akan ditempatkan dalam kolom dengan mengasumsikan tipe data dari

om DATE, maka Oracle memperlakukan ′ sebagai nilai DATE setelah memverifikasi karakter string

in tipe data serta beberapa kategori untuk jenis yang ditentukan oleh pengguna, yang dapat digunakan sebagai tipe data.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

yang tidak terisi nilai. Jika Anda mencoba untuk memasukkan nilai yang terlalu panjang untuk kolom, Oracle akan menampilkan pesan error.NCHARTipe data NCHAR adalah tipe data Unicode-only. Bila Anda membuat sebuah tabel dengan kolom NCHAR, Anda akan diminta menentukan panjang kolom dalam karakter. Anda mendefinisikan karakter nasional saat Anda membuat (create) database Anda.NVARCHAR2Tipe data NVARCHAR2 adalah tipe data Unicode-only. Bila Anda membuat sebuah tabel dengan kolom NVARCHAR2, anda akan diminta menyertakan jumlah maksimal karakter yang dapat diisikan kedalamnya. Oracle kemudian menyimpan setiap nilai dalam kolom persis seperti yang Anda tentukan itu, asalkan nilai tidak melebihi panjang maksimum kolom.VARCHAR2Tipe data VARCHAR2 menetapkan string karakter variabel-panjang. Ketika Anda membuat kolom VARCHAR2, anda akan diminta menyertakan jumlah maksimal byte atau karakter data yang dapat diisikan kedalamnya. Oracle kemudian menyimpan setiap nilai dalam kolom persis seperti yang Anda tentukan itu, asalkan nilai tidak melebihi panjang maksimum kolom tentang kolom. Jika Anda mencoba untuk memasukkan nilai yang melebihi panjang yang ditentukan, maka Oracle akan menampilkan pesan error.VARCHARJangan menggunakan tipe data VARCHAR. Gunakan VARCHAR2 sebagai gantinya. Meskipun tipe data VARCHAR saat ini identik dengan VARCHAR2, tipe data VARCHAR dijadwalkan akan didefinisikan ulang sebagai tipe data terpisah yang digunakan untuk string karakter variabel-panjang dibandingkan dengan perbandingan semantik yang berbeda.LONGJangan membuat tabel dengan menggunakan kolom LONG. Gunakan kolom LOB (CLOB, NCLOB, BLOB) sebagai gantinya. kolom LONG didukung hanya untuk kompatibilitas. kolom LONG menyimpan string karakter yang mengandung variabel-panjang sampai dengan 2gigabyte -1 atau 231-1 byte. Kolom LONG memiliki banyak karakteristik kolom VARCHAR2. Anda dapat menggunakan kolom LONG untuk menyimpan string teks panjang. Panjang nilai LONG mungkin dibatasi oleh memori yang tersedia pada komputer Anda.RAW dan LONG RAWTipe data RAW dan LONG RAW menyimpan data yang tidak secara eksplisit dikonversi olehOracle Database ketika memindahkan data antara sistem yang berbeda. Tipe data inidimaksudkan untuk data biner atau string byte. Sebagai contoh, Anda dapat menggunakanLONG RAW untuk menyimpan grafik, sound, dokumen, atau array data biner, yangpenafsirannya tergantung pada penggunaan masing-masing.

SMK TELKOM MALANG

TIPE DATA SQLserver

Server adalah sistem manajemen database relasional (RDBMS) yang dirancang

untuk aplikasi dengan arsitektur client/server. Istilah client, server, dan

client/server dapat digunakan untuk merujuk kepada konsep yang sangat

umum

atau hal yang spesifik dari perangkat keras atau perangkat lunak. Pada level

yang

sangat umum, sebuah client

meminta layanan atau sumber daya (resource) dari komponen sistem lainnya

Sedangkan sebuah server adaah setiap komponen sistem yang menyediakan

layanan atau sumber daya ke komponen sistem lainnya.Berikut beberapa penjelasan dari tipe

INT, Tipe data INT ini mungkin sudah banyak dikenal oleh Anda. Tipe data ini dapat menerima nilai mulai dari -231

menyimpan data pada harddisk. BIT, Tipe data BIT hanya bisa menerima input angka 1 dan 0 sebagai nilai (atau bisa

juga null, yang berarti tidak ada nilai). Tipe data ini sangat membantu jika Anda ingin menghasilkan output yes/no, true/false, dsb.

SMALLINT, Tipe data SMALLINT ini juga mirip dengan tipe data INT , hanya saja nilai yang diterima lebih kecil dari tipe data dari -215 hingga 215-1. SMALLINTdigunakan INT. INT berfungsi untuk mendefinisikan integer, bilangan bulat yang dapat menampung angka hingga 4byte. Sedangkan SMALLINT hanya mampu mendefinisikan angka sebanyak 2byte.

BIGINT, Tipe data BIGINT ini mirip dengan diterima lebih besar dari pada tipe data INT. Tipe data ini dapat menerima nilai mulai dari -263 hingga 263-1. Tipe data iniharddisk.

DECIMAL, Tipe data DECIMAL ini meinteger yang telah dibahas sebelumnya. Tipe data ini menggunakan 2 parameter untuk menentukan tingkat presisi nilai yang diterima; precisionjumlah digit yang bisa diterima olebelakang koma yang bisa diterima oleh field. Jadi, jika kita membuat parameter precision sebanyak 5 dan scaleini : 123,45. Tipe data ini bisa menerima nilai mulai dari menghabiskan 5-17 bytes untuk menyimpan data pada harddisk, tergantung pada

SMK TELKOM MALANG

TIPE DATA SQLserver

adalah sistem manajemen database relasional (RDBMS) yang dirancang

aplikasi dengan arsitektur client/server. Istilah client, server, dan

client/server dapat digunakan untuk merujuk kepada konsep yang sangat

atau hal yang spesifik dari perangkat keras atau perangkat lunak. Pada level

sangat umum, sebuah client adalah setiap komponen dari sebuah sistem yang

meminta layanan atau sumber daya (resource) dari komponen sistem lainnya

Sedangkan sebuah server adaah setiap komponen sistem yang menyediakan

layanan atau sumber daya ke komponen sistem lainnya.Berikut beberapa penjelasan dari tipe - tipe data pada SQL Server :

Tipe data INT ini mungkin sudah banyak dikenal oleh Anda. Tipe data ini dapat 31 hingga 231-1 . Tipe data ini menghabiskan 4 bytes untuk

menyimpan data pada harddisk.Tipe data BIT hanya bisa menerima input angka 1 dan 0 sebagai nilai (atau bisa

juga null, yang berarti tidak ada nilai). Tipe data ini sangat membantu jika Anda ingin n output yes/no, true/false, dsb.Tipe data SMALLINT ini juga mirip dengan tipe data INT , hanya saja nilai

yang diterima lebih kecil dari tipe data INT. Tipe data ini dapat menerima nilai mulai 1. SMALLINT Sama seperti INT , membutuhkan 50% memory yang berfungsi untuk mendefinisikan integer, bilangan bulat yang dapat

menampung angka hingga 4byte. Sedangkan SMALLINT hanya mampu mendefinisikan

Tipe data BIGINT ini mirip dengan tipe data INT , hanya saja nilai yang diterima lebih besar dari pada tipe data INT. Tipe data ini dapat menerima nilai mulai

1. Tipe data ini menghabiskan 8 bytes untuk menyimpan data pada

Tipe data DECIMAL ini menerima nilai yang lebih presisi dibanding tipe data integer yang telah dibahas sebelumnya. Tipe data ini menggunakan 2 parameter untuk menentukan tingkat presisi nilai yang diterima; precision dan scale. Precisionjumlah digit yang bisa diterima oleh field, sedangkan scale adalah jumlah angka di belakang koma yang bisa diterima oleh field. Jadi, jika kita membuat parameter

sebanyak 5 dan scale sebanyak 2 maka field kita bisa menerima nilai seperti 123,45. Tipe data ini bisa menerima nilai mulai dari -1038hingga 1038-

untuk menyimpan data pada harddisk, tergantung pada

adalah sistem manajemen database relasional (RDBMS) yang dirancang

aplikasi dengan arsitektur client/server. Istilah client, server, dan

client/server dapat digunakan untuk merujuk kepada konsep yang sangat

atau hal yang spesifik dari perangkat keras atau perangkat lunak. Pada level

adalah setiap komponen dari sebuah sistem yang

meminta layanan atau sumber daya (resource) dari komponen sistem lainnya

Sedangkan sebuah server adaah setiap komponen sistem yang menyediakan

Tipe data INT ini mungkin sudah banyak dikenal oleh Anda. Tipe data ini dapat Tipe data ini menghabiskan 4 bytes untuk

Tipe data BIT hanya bisa menerima input angka 1 dan 0 sebagai nilai (atau bisa juga null, yang berarti tidak ada nilai). Tipe data ini sangat membantu jika Anda ingin

Tipe data SMALLINT ini juga mirip dengan tipe data INT , hanya saja nilai INT. Tipe data ini dapat menerima nilai mulai

, membutuhkan 50% memory yang berfungsi untuk mendefinisikan integer, bilangan bulat yang dapat

menampung angka hingga 4byte. Sedangkan SMALLINT hanya mampu mendefinisikan

tipe data INT , hanya saja nilai yang diterima lebih besar dari pada tipe data INT. Tipe data ini dapat menerima nilai mulai

menghabiskan 8 bytes untuk menyimpan data pada

nerima nilai yang lebih presisi dibanding tipe data integer yang telah dibahas sebelumnya. Tipe data ini menggunakan 2 parameter untuk

Precision adalah adalah jumlah angka di

belakang koma yang bisa diterima oleh field. Jadi, jika kita membuat parameter kita bisa menerima nilai seperti

-1. Tipe data ini untuk menyimpan data pada harddisk, tergantung pada

SMK TELKOM MALANG

Firman Nurdiyansyah2012

seperseribu detik (milliseconds). Tipe data DATETIME ini menghabiskan 8 bytes untuk menyimpan data pada harddisk.

MONEY, Tipe data MONEY merupakan Bilangan pecahan dengan 4 angka dibelakang koma. Digunakan untuk perhitungan moneter. Tipe data ini menghabiskan 8 bytes untuk menyimpan data pada harddisk.

TEXT, Tipe data TEXT dapat Menyimpan teks sampai dengan 2 GB. Text disebut juga dengan binary large objects (BLOBs).

IMAGE, Tipe data IMAGE berfungsi untuk Mendefinisikan binary data untuk menyimpan image seperti GIF, JPG, TIFF,dll.

CHAR, Tipe data CHAR berfungsi untuk Mendefinisikan string sepanjang dan mempunyai karakter. Tipe data CHAR ini dapat digunakan untuk memasukkan data karakter non-Unicode dengan jumlah karakter yang fix. Tipe data CHAR ini bisa menerima hingga 8000 karakter, dan jumlah bytes yang dibutuhkan tergantung jumlah karakter yang dimasukkan. Apabila jumlah karakter yang dimasukan adalah 1 karakter maka membutuhkan 1 byte.

VARCHAR, Tipe data VARCHAR ini dapat Mendefinisikan string sepanjang variabel n. Tipe data ini mirip dengan tipe data char, namun tipe data ini berguna bagi Anda yang tidak mengetahui secara pasti jumlah karakter yang akan dimasukkan oleh user. Tipe data ini juga bisa menerima nilai hingga 8000 karakter. Jadi, jika pada tipe data char, Anda mendefinisikan char(5), maka Anda akan selalu membutuhkan 5 bytes untuk menyimpan data pada harddisk, walaupun jumlah karakter yang dimasukkan hanya 1 hingga 4 karakter; maka pada tipe data ini, jumlah bytes yang dibutuhkan akan lebih fleksibel. Tipe data FLOAT menghabiskan 4-8 bytes untuk menyimpan data pada harddisk.

FLOAT,Tipe data FLOAT ini mirip dengan tipe data DECIMAL, hanya saja paramater scale pada tipe data ini bisa menerima nilai yang tak terhingga, seperti pada nilai pi. Berfungsi untuk mendefinisikan angka pecahan (floating point). Nilai n adalah jumlah angka yang dapat ditampung.REAL, Tipe data REAL ini mirip dengan tipe data FLOAT, hanya saja lebih kecil dibandingkan menerima nilai yang dengan FLOAT. sama dengan float namun menempati memory 50% dari float. Dan penyimpanan tipe data REAL pun hanya menggunakan 4 bytes untuk menyimpan data pada harddisk.

BINARY, Tipe data BINARY ini dapat menerima data BINARY dengan maksimum 8000 bytes data. Tipe data ini diinterpretasikan sebagai string dari bit. dan berfungsi untuk menyimpan bit pattern seperti heksadecimal.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

TIPE DATA MySQL

MySQL adalah sebuah perangkat lunak pembuat database yang bersifat terbuka atau open source dan berjalan disemua platform baik Linux maupun Si Windows, MySQL merupakan program pengakses database yang bersifat network sehingga dapat digunakan untuk aplikasi Multi User (Pengguna Banyak).

MySQL adalah Relational Database Management System (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat komersial.

MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya dalam query data. Hal ini terbukti untuk query yang dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali lebih cepat dari PostgreSQL dan lima kali lebih cepat dibandingkan Interbase.

Berikut berbagai macam tipe - tipe data yang ada di dalam MySQL, berikut penjelasannya :Tipe Data Numeric

INT , Adalah sebuah bilangan bulat berukuran normal yang dapat ditanda tangani atau unsigned. Anda dapat menentukan lebar ukuran data sampai dengan 11 digit.

TINYINT, Adalah sebuah bilangan yang sangat kecil yang dapat ditandatangani atau unsigned. Anda dapat menentukan lebar ukuran data sampai dengan 4 digit.

SMALLINT, Adalah sebuah integer kecil yang dapat ditandatangani atau unsigned. Anda dapat menentukan lebar sampai dengan 5 digit.

MEDIUMINT, Adalah sebuah bilangan menengah yang dapat ditandatangani atau unsigned. Anda dapat menentukan lebar sampai dengan 9 digit.

BIGINT, Adalah Sebuah integer besar yang dapat ditandatangani atau unsigned. Anda dapat menentukan lebar sampai dengan 11 digit.

Float (M, D), Adalah sebuah angka floating-point yang tidak dapat unsigned. Anda dapat menentukan panjang tampilan (M) dan jumlah desimal (D). Desimal presisi bisa pergi ke 24 tempat untuk sebuah Float.

DOUBLE (M, D), Adalah sebuah presisi angka floating-point ganda yang tidak dapat unsigned. Anda dapat menentukan panjang tampilan (M) dan jumlah desimal (D). Desimal presisi bisa pergi ke 53 tempat untuk sebuah DOUBLE. REAL adalah sinonim untuk DOUBLE.

DECIMAL (M, D), Adalah sebuah angka floating-point membongkar yang tidak dapat unsigned. Dalam membongkar desimal, desimal masing-masing sesuai dengan satu byte. Mendefinisikan panjang tampilan (M) dan jumlah desimal (D) diperlukan. NUMERIC adalah sinonim untuk DECIMAL.

Jenis Tanggal dan Waktu DateTime, Adalah suatu kombinasi tanggal dan waktu dalam YYYY-MM-DD HH: MM: SS .

Dan tipe data tersebut berukuran 8 byte.

WAKTU – Menyimpan waktu di HH: MM: SS Format. Dat tipe data tersebut berukuran 3 byte.

Jenis String

SMK TELKOM MALANG

Firman Nurdiyansyah2012

CHAR (M), Asalah sebuah data string yang tetap-panjang antara 1 dan 255 karakter, kanan diisi dengan spasi dengan panjang tertentu bila disimpan. Mendefinisikan panjang tidak diperlukan, tetapi defaultnya adalah 1.

VARCHAR (M), Adalah sebuah Variabel string panjang antara 1 dan 255 karakter, misalnya VARCHAR (25). Anda harus menentukan panjang saat membuat bidang VARCHAR.

BLOB atau TEXT, Adalah sebuah Field dengan panjang maksimum 65535 karakter. Gumpalan adalah “Objects Besar Biner” dan digunakan untuk menyimpan sejumlah besar data biner, seperti gambar atau jenis file lainnya. Fields didefinisikan sebagai TEKS juga memegang sejumlah besar data, perbedaan antara keduanya adalah bahwa macam dan perbandingan pada data yang tersimpan bersifat case sensitif pada gumpalan dan tidak case sensitif di bidang TEKS. Anda tidak menentukan panjang dengan BLOB atau TEXT.

TINYBLOB atau TINYTEXT, Adalah sebuah BLOB atau TEXT kolom dengan panjang maksimum 255 karakter. Anda tidak menentukan panjang dengan TINYBLOB atau TINYTEXT.

MEDIUMBLOB atau MEDIUMTEXT, Adalah Sebuah BLOB atau TEXT dengan kolom panjang maksimum 16777215 karakter. Anda tidak menentukan panjang dengan MEDIUMBLOB atau MEDIUMTEXT.

LONGBLOB atau LONGTEXT, Adalah sebuah BLOB atau TEXT dengan kolom panjangmaksimum 4294967295 karakter. Anda tidak menentukan panjang dengan LONGBLOB atau LONGTEXT

ENUM, Adalah sebuah enumerasi, yang merupakan istilah keren untuk daftar. Ketika mendefinisikan sebuah ENUM, Anda membuat daftar item dari nilai yang harus dipilih (atau dapat menjadi NULL). Sebagai contoh, jika Anda ingin untuk memuat bidang “A” atau “B” atau “C”, Anda akan mendefinisikan Anda sebagai ENUM ENUM (‘A’, ‘B’, ‘C’) dan hanya nilai-nilai (atau NULL) pernah bisa mengisi bidang tersebut.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

TIPE DATA ACCES

Microsoft Access (atau Microsoft Office Access) adalah sebuah program aplikasi basis data komputer relasional yang ditujukan untuk kalangan rumahan dan perusahaan kecil hingga menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft PowerPoint.Berikut tipe-tipe data Ms.Acess:Tipe Data Field

Field-field dalam sebuah tabel haruslah ditentukan tipe datanya agar Access mengetahui bagaimana agar data tersebut dapat diolah dan memperlakukan data dalam field itu. Oleh karena itu sangat penting bagi kita untuk memahami berbagai tipe data field yang ada. Bahkan pengetahuan mengenai hal ini akan bermanfaat ketika Anda merancang berbagai macam tabel dalam sebuah database.

TextIni adalah tipe data yang paling umum digunakan. Tipe data ini bisa digunakan untuk field alfanumeric, seperti nama, alamat, kode pos, nomor telepon dan sebagainya. Microsoft Access memberi keleluasaan bagi Anda untuk memasukkan data sampai 255 karakter ke field dengan tipe data ini.

MemoTipe data ini mirip dengan teks, tetapi bisa menampung sampai dengan 64.000 karakter. Tipe data text lebih sering dugunakan karena memo tidak bisa diurutkan atau diindeks.

NumberTipe data ini digunakan untuk menyimpan data numeric yang akan digunakan untuk perhitungan matematis. Anda tidak menggunakan tipe data ini untuk nomor telepon, misalnya, karena nomor telepon tidak perlu diproses secara matematis.

Date/TimeTipe data ini digunakan untuk nilai tanggal dan waktu. Misalnya, Anda bisa menggunakan tipe data ini untuk tanggal lahir atau tanggal pembelian.

CurrencyTipe data ini terutama digunakan untuk nilai mata uang. Tetapi, Anda juga bisa menyertakan data numeric dalam perhitungan yang memerlukan satu sampai empat angka desimal. Tipe data ini, misalnya, bisa digunakan untuk nilai pembelian atau ongkos pengantaran.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

DDL DML dan DCLPengertian dan Contoh DDL,DML dan DCL - Secara umum perintah-perintah dari DDL, DML dan DCL dapat anda lihat dari skema gambar diatas, dan untuk penjelasannya silahkan simak dibawah ini:

1. DDL (Data Definition Language)

Data Definition Language (DDL) merupakan sub bahasa SQL yang digunakan untuk membangun kerangka database. Atau juga merupakan kelompok perintah yang berfungsi untuk mendefinisikan atribut-atribut database, table, atribut kolom, batasan-batasan terhadap suatu atribut serta hubungan antar table.Yang termasuk kelompok DDL ini adalah :

CREATE : Perintah ini digunakan untuk membuat, termasuk di antaranya membuat database baru, tabel baru, view baru, dan kolom.

Contoh :> create table mahasiswa (nim char(8) primary key,nama_mahasiswa varchar(20),nilai integer(3),alamat varchar(25);

ALTER : Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat. Pekerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.

Contoh :>alter table mahasiswa rename wisudawan;

DROP : Perintah ini digunakan untuk menghapus database dan tabel.

Contoh :>Alter table ‘mahasiswa’ drop ‘alamat’;

2. DML (Data Manipulation Language )Data Manipulation Language (DML) merupakan sub bahasa SQL yang digunakan untuk memanipulasi data dalam database yang telah terbuat.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

Perintah yang digunakan, di antaranya

• INSERT : Perintah ini digunakan untuk menyisipkan atau memasukkan data baru ke dalam tabel. Penggunaannya setelah database dan tabel selesai dibuat.Contoh :Insert into mahasiswa values (“08052926”, “Frenky”,”70”);

• SELECT : Perintah ini digunakan untuk mengambil data atau menampilkan data dari satu tabel atau beberapa tabel dalam relasi. Data yang diambil dapat kita tampilkan dalam layar prompt MySQL secara langsung maupun ditampilkan pada tampilan aplikasi.Contoh :Select nama_mahasiswa from mahasiswa where nilai = 70;

• UPDATE : Perintah ini digunakan untuk memperbarui data lama menjadi data terkini. Jika Anda memiliki data yang salah atau kurang up to date dengan kondisi sekarang, maka dapat diubah isi datanya menggunakan perintah UPDATE.Contoh:

>mahasiswa set nim = ‘08052926’ = 08052927;• DELETE : Perintah ini digunakan untuk menghapus data dari tabel. Biasanya data yang dihapus merupakan data yang sudah tidak diperlukan lagi. Pada saat menghapus data, perintah yang telah dijalankan tidak dapat digagalkan, sehingga data yang telah hilang tidak dapat dikembalikan lagiContoh :>delete form mahasiswa;3. Data Control Language (DCL)Data Control Language (DCL) merupakan sub bahasa SQL yang digunakan untuk melakukan pengontrolan data dan server databasenya.Perintah DCL, di antaranya:• GRANT : Perintah ini digunakan untuk memberikan hak/ijin akses oleh administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus (DELETE), mengubah (UPDATE), dan hak khusus berkenaan dengan sistem databasenya.

• REVOKE : Perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh administrator.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

Membuat Database MySQL dengan CMD

Jika sudah berjalan seperti diatas kita buka CMD melalui Start – All Programs –Accessories – Command Promp atau dengan shortcut tombol WINDOWS+R kemudian ketikan “CMD” tanpa tanda kutip kemudian ENTER setelah itu akan tampil sebagai berikut.

Karena Xampp agak sedikit berbeda dengan AppServ, pada AppServ tidak perlu buka directory langsung mengetikan “”. Karena kita menggunakan Xampp jadi buka directory locasi Xampp yang terinstal biasanya terdapat d local C dengan perintah “cd c:xamppmysqlbin” kemudian Enter maka akan tampil sebagai bekikut.

Kemudain kita ketikan perintah “mysql –u root” kemudian Enter untuk mengakses ke database pada xampp, peredaan satu lagi jika di Xampp tidak perlu masukan password tapi pada AppServ harus memasukan password seperti berikut “mysql –u root –p pass_appserv”. Jika sudah maka akan tampil sebagai berikut.

Keterangan : mysql (database mysql), -u (user dengan nama user root).

Setelah itu kita buat database, misal nama databasenya adalah dbsekkolah dengan perintah “create database dbsekolah;” kemudian Enter jika berhasil ada keterangan Query OK sebagai berikut.

Kemudian kita cek database yang kita buat tadi sudah ada apa belum dengan perintah “show databases;” kemudian Enter dengan tampilan sebagai berikut.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

Membuat Table MySQL di CMD

Selum membuat tabel kita gunakan atau panggil database yang akan dibuat tabel karena kita menggunakan database dbsekolah maka dengan perintah “use dbsekolah;” kemudian Enter, jika berhasil ada keterangan Database change,kemudian buat tabel dengan contoh struktur yang biasa digunakan.

create table “nama_tabel”(“nama_field” “tipe_field” “(panjang_data)”); tanpa tanda kutip.Misal namanya tblsiswa kita gunakan perintah diatas sebagai berikut “create table tblsiswa(nim char(8), nama varchar(50), alamat varchar(50));” kemudian Enter jika berhasil ada keterangan Query OK untuk leih jelas lihat gamar diawah ini.

Sekarang kita liat table yang sudah kita buat dengan perintah “describe tblsiswa” kemudian Enter dan menampilkan tabel yang terdapat di suatu database denga perintah “show tables from dbsekolah;” maka akan tampil sebagai berikut.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

Perintah ALTER TABLE pada MySqlAda saatnya dimana kita harus mengganti struktur table yang pernah kita buat. Untungnya MySql mendukung/menyediakan perintah untuk melakukan kegiatan tersebut. Perintahnya adalah ALTER TABLE. Penggunaanya sedikit sulit. Mudah-mudahan penjelasan menambah pemahaman supaya lebih mudah untuk dipelajari. Bentuk umum perintahnya adalah sebagai berikut :

ALTER TABLE nama_tabel alter_options;

dimana :

ALTER TABLE merupakan perintah dasar untuk mengubah tabel. nama_tabel merupakan nama tabel yang akan diubah strukturnya. alter_options merupakan pilihan perubahan tabel. Contoh Option yang bisa digunakan

adalah sebagai berikut:

Nama Option Fungsi OptionADD nama_field/kolom_baru untuk menambahkan field/kolom baru.

ADD PRIMARY KEY (nama_field/kolom)

untuk menambahkan primary key pada tabel

CHANGE nama_field_lama nama_field_baru_definisi_field_baru

untuk mengubah nama_field_lama menjadi nama_field_baru_definisi_field_barudefinisi_field_baru artinya adalah type data.

MODIFY nama_field type_data untuk mengubah type_data suatu field

DROP nama_field untuk menghapus field nama_field

RENAME TO nama_tabel_baru untuk mengganti nama tabel

Misal di sini kita buat table sederhana dengan nama peserta dan strukturnya sebagai berikut :

Nama Kolom Type data Panjang Data Keterangan

NIP integer 5o bukan primary keyo bukan auto increment

nama varchar 30

Perintahnya adalah sebagai berikut : CREATE TABLE peserta ( NIP int(5) NOT NULL, nama varchar(30) NOT NULL); *sengaja tidak di beri “primary key” dan “auto increment” seharusnya jika diberi perintah DESC peserta; maka hasilnya adalah sebagai berikut : +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | NIP | int(5) | NO | | NULL | | | nama | varchar(30) | NO | | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.01 sec)

o Karena perintah alter table terdapat banyak sekali variasinya.o Tambah Field/Kolom Baruo Tambah/hapus Primary Keyo Hapus Field/Kolomo Ubah Nama Field/Kolomo Ubah Type Data Suatu Field/Kolomo Ganti Nama Tabel

Tambah Field/Kolom Baru.

SMK TELKOM MALANG

Firman Nurdiyansyah2012

Misal kita ingin menambah Field/Kolom alamat pada table di atas, maka perintahnya adalah :ALTER TABLE peserta ADD alamat varchar(30);

Setelah itu, ketik lagi perintah “DESC peserta;”, seharusnya hasilnya adalah sebagai berikut:

+--------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+--------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | |+--------+-------------+------+-----+---------+-------+3 rows in set (0.01 sec)

Field/Kolom alamat sudah terbentuk. Timbul pertanyaan bagaimana menambah table telepon di tengah-tengah antara kolom nama dan alamat. Maka perintahnya adalah :

ALTER TABLE peserta ADD telepon varchar(30) AFTER nama;

Kita bisa menggunkan kata AFTER untuk membantu menambahkan kolom sesuai dengan yang anda inginkan. Kata BEFORE tidak bisa digunakan. Hasilnya adalah sebagai berikut setelah ketik perintah ” DESC peserta; “

+---------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+---------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || telepon | varchar(30) | YES | | NULL | || alamat | varchar(30) | YES | | NULL | |+---------+-------------+------+-----+---------+-------+4 rows in set (0.01 sec)

Terlihat bahwa kolom telepon sudah berhasil ditambahkan.

Tambah/hapus Primary KeyUntuk menambah Primary Key pada table, perintahnya adalah:ALTER TABLE nama_table ADD PRIMARY KEY (nama_kolom);

Contoh dan hasilnya adalah sebagai berikut :

mysql> ALTER TABLE peserta ADD PRIMARY KEY (NIP);Query OK, 0 rows affected (0.04 sec)Records: 0 Duplicates: 0 Warnings: 0

mysql> desc peserta;+---------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+---------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | PRI | NULL | || nama | varchar(30) | NO | | NULL | || telepon | varchar(30) | YES | | NULL | || alamat | varchar(30) | YES | | NULL | |+---------+-------------+------+-----+---------+-------+4 rows in set (0.01 sec)

Untuk hapus Primary Key pada table, perintahnya adalah:

ALTER TABLE nama_table DROP PRIMARY KEY;

Contoh dan hasilnya adalah sebagai berikut :

mysql> ALTER TABLE peserta DROP PRIMARY KEY;Query OK, 0 rows affected (0.04 sec)Records: 0 Duplicates: 0 Warnings: 0

mysql> desc peserta;+---------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |

SMK TELKOM MALANG

Firman Nurdiyansyah2012

+---------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || telepon | varchar(30) | YES | | NULL | || alamat | varchar(30) | YES | | NULL | |+---------+-------------+------+-----+---------+-------+4 rows in set (0.01 sec)Hapus Field/KolomBentuk perintahnya adalah sebagai berikut : ALTER TABLE nama_tabel DROP COLUMN nama_kolom;

Misalnya kita ingin menghapus kolom telepon, maka contohnya bisa dilihat seperti di bawah ini:

mysql> desc peserta;+---------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+---------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || telepon | varchar(30) | YES | | NULL | || alamat | varchar(30) | YES | | NULL | |+---------+-------------+------+-----+---------+-------+4 rows in set (0.01 sec)

mysql> ALTER TABLE peserta DROP COLUMN telepon;Query OK, 0 rows affected (0.09 sec)Records: 0 Duplicates: 0 Warnings: 0

mysql> desc peserta;+--------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+--------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | |+--------+-------------+------+-----+---------+-------+3 rows in set (0.01 sec)Ubah Nama Field/KolomMengubah nama kolom/field dapat menggunakan option change. Sebelumnya, kita buat kolom baru dulu bernama jenis_kelamin dengan jenis data “char” yang berjumlah 1 dan diletakkan setelah kolom alamat.mysql> alter table peserta add jenis_kelamin char(1) after alamat;Query OK, 0 rows affected (0.10 sec)Records: 0 Duplicates: 0 Warnings: 0

mysql> desc peserta;+---------------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+---------------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | || jenis_kelamin | char(1) | YES | | NULL | |+---------------+-------------+------+-----+---------+-------+4 rows in set (0.07 sec)

Setelah berhasil, kita rubah kolom jenis_kelamin tersebut menjadi sex.Berikut ini contoh perintahnya:

mysql> alter table peserta change jenis_kelamin sex char(1);Query OK, 0 rows affected (0.01 sec)Records: 0 Duplicates: 0 Warnings: 0

mysql> desc peserta;+--------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+--------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | || sex | char(1) | YES | | NULL | |+--------+-------------+------+-----+---------+-------+4 rows in set (0.01 sec)

SMK TELKOM MALANG

Firman Nurdiyansyah2012

Ubah Type Data Field/KolomTadi kita sudah membuat kolom/field baru bernama sex. Kita ingin membuat kolom/field tersebut hanya terisi oleh karakter “L” untuk laki-laki dan “P” untuk perempuan. Jadi kita merubah dari type data char(1) menjadi enum (‘L’,’P’). Kita bisa mengubah hal tersebut dengan perintah MODIFY. Berikut ini adalah contohnya :mysql> desc peserta;+--------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+--------+-------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | || sex | char(1) | YES | | NULL | |+--------+-------------+------+-----+---------+-------+4 rows in set (0.01 sec)

mysql> alter table peserta modify sex enum('L','P') not null;Query OK, 0 rows affected (0.11 sec)Records: 0 Duplicates: 0 Warnings: 0

mysql> desc peserta;+--------+---------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+--------+---------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | || sex | enum('L','P') | NO | | NULL | |+--------+---------------+------+-----+---------+-------+4 rows in set (0.01 sec)

Skenario selanjutnya adalah : kita ingin merubah NIP menjadi auto_increment. Hal tersebut bisa kita lakukan dengan option modify dengan catatan yang di-auto_increment-kan harus sebagai primary key. Langkahnya ada 2 tahap, yaitu :

o Ubah kolom NIP menjadi primary key

mysql> desc peserta;+--------+---------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+--------+---------------+------+-----+---------+-------+| NIP | int(5) | NO | | NULL | || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | || sex | enum('L','P') | NO | | NULL | |+--------+---------------+------+-----+---------+-------+4 rows in set (0.01 sec)

mysql> alter table peserta add primary key (NIP);Query OK, 0 rows affected (0.05 sec)Records: 0 Duplicates: 0 Warnings: 0

mysql> desc peserta;+--------+---------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+--------+---------------+------+-----+---------+-------+| NIP | int(5) | NO | PRI | NULL | || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | || sex | enum('L','P') | NO | | NULL | |+--------+---------------+------+-----+---------+-------+4 rows in set (0.01 sec)

o Seting kolom NIP menjadi auto_increment

mysql> alter table peserta modify NIP int(5) not null auto_increment;Query OK, 1 row affected (0.05 sec)Records: 1 Duplicates: 0 Warnings: 0

mysql> desc peserta;+--------+---------------+------+-----+---------+----------------+

SMK TELKOM MALANG

Firman Nurdiyansyah2012

| Field | Type | Null | Key | Default | Extra |+--------+---------------+------+-----+---------+----------------+| NIP | int(5) | NO | PRI | NULL | auto_increment || nama | varchar(30) | NO | | NULL | || alamat | varchar(30) | YES | | NULL | || sex | enum('L','P') | NO | | NULL | |+--------+---------------+------+-----+---------+----------------+4 rows in set (0.01 sec)

Misalnya kita ingin men-SET auto_increment menjadi 11111 sebagai angka awal, karena kita sudah set auto_increment sebelumnya, kita bisa melakukannya sebagai berikut :

mysql> alter table peserta auto_increment=11111;Query OK, 0 rows affected (0.01 sec)Records: 0 Duplicates: 0 Warnings: 0

mysql> insert into peserta values ('','testing','klaten bersinar','L');Query OK, 1 row affected, 1 warning (0.05 sec)

mysql> select * from peserta;+-------+---------+-----------------+-----+| NIP | nama | alamat | sex |+-------+---------+-----------------+-----+| 11111 | testing | klaten bersinar | L |+-------+---------+-----------------+-----+1 row in set (0.00 sec)

Karena sudah auto_increment, maka kolom NIP bisa dikosongkan dan akan terisi otomatis sesuai angka yang kita SET sebelumnya.

Ganti Nama Tabelmengganti nama table bisa memakai perintah alter table juga lho.. Syntax-nya adalah sebagai berikut ini :ALTER TABLE nama_table_lama RENAME TO nama_table_baru;

berikut ini contoh before-afternya

mysql> show tables;+----------------+| Tables_in_coba |+----------------+| peserta |+----------------+1 row in set (0.00 sec)

mysql> alter table peserta rename to percobaan;Query OK, 0 rows affected (0.01 sec)

mysql> show tables;+----------------+| Tables_in_coba |+----------------+| percobaan |+----------------+1 row in set (0.00 sec)

SMK TELKOM MALANG

Firman Nurdiyansyah2012

TRUNCATE

Apa perbedaan antara perintah DELETE dan TRUNCATE? Apa salah satu ada yang lebih cepat dari yang lainnya? Perintah DELETE akan melakukan log terhadap data untuk masing-masing row yang dihapus dan ini akan mengakibatkan transaction log Anda bisa membengkak ukurannya. Namun demikian, jika Anda menjalankan database Anda dalam mode full recovery, maka hal tersebut wajib dilakukan karena akan memudahkan SQL Server untuk melakukan recovery jika sewaktu-waktu terjadi bencana pada database Anda. Tetapi kita bisa ambil dari fakta di atas bahwa setiap data akan di log ke dalam transaction log dan itu sudah cukup menjelaskan bahwa perintah DELETE bisa menjadi lambat.

Sementara itu, perintah TRUNCATE lebih cepat daripada DELETE dan ini dilihat dari cara perintah TRUNCATE dalam “menghapus” data. Pada kenyataannya, perintah TRUNCATE tidak menghapus data, tetapi dia akan men-dealokasi semua data page dan menghapus pointer yang menuju ke indexnya. Data sebenarnya masih ada dan baru akan hilang apabila lokasinya ditumpangi data baru atau bila Anda melakukan database shrinking. Aktivitas dari perintah TRUNCATE tersebut tidak memerlukan resource yang besar dan maka dari itu perintah ini bisa berjalan dengan sangat cepat. Adalah pendapat yang salah pula jika perintah TRUNCATE itu tidak di-log. Proses dealokasi data page tadi sebenarnya juga direkam ke dalam transaction log file. Menurut Books OnLine SQL Server menyatakan bahwa operasi TRUNCATE merupakan operasi yang sifatnya “minimally logged operation”. Anda dapat menggunakan perintah TRUNCATE di dalam suatu transaction database, dan ketika transaction ini Anda roll-back, maka data page akan dialokasikan kembali dan database kembali ke keadaan seperti sebelum perintah TRUNCATE dijalankan.

Beberapa keterbatasan dari perintah TRUNCATE adalah:Anda harus bertindak sebagai db_owner, ddl_admin atau owner dari tabel agar bisa menjalankan perintah TRUNCATE ini.TRUNCATE tidak akan jalan pada tabel yang direferensikan oleh satu atau lebih FOREIGN KEY constraint.

Jika TRUNCATE lebih cepat daripada DELETE maka mengapa kita harus menggunakan DELETE? Tunggu dulu. TRUNCATE merupakan pendekatan “all-or-nothing” dalam proses menghapus data. Anda tentu saja tidak bisa menentukan kriteria pada data tertentu yang hendak dihapus jika menggunakan perintah TRUNCATE. Pilihannya hanya ada dua, hapus semua atau tidak ada yang dihapus sama sekali.

mysql> select *from tblsiswa;+------+--------------------+-------+| nis | nama | kelas |+------+--------------------+-------+| 001 | Arnis Tri Widiyati | X RPL |+------+--------------------+-------+1 row in set (0.00 sec)

mysql> truncate table tblsiswa;Query OK, 0 rows affected (0.01 sec)

mysql> select *from tblsiswa;Empty set (0.01 sec)

mysql>