Tugas 3 Tipe-Tipe Data Pada Database

11 October 2012 12:39:18 Dibaca : 21813 Kategori : 921409131 tugas 3

Tipe-tipe Data Pada Database

 

Untuk memulai pemrograman ataupun pembuatan database sangat penting mengetahui tipe data. Ini adalah syarat mutlak agar data/variable yang kita simpan valid dan efisien. Setiap bahasa pemrograman atau database mempunyai tipe data sendiri-sendiri tapi pada prinsipnya sama.

 

Pada dasarnya ada ada empat jenis data yaitu tipe numeric, string, date and time serta default values.

 

agaimana cara mengatur file??

 

Database adalah kumpulan data yang saling berhubungan yang diatur secara logis yang dirancang dan dibangun untuk tujuan khusus.database disini adalah representasi dari sebuah teknologi untuk mengumpulkan banyak fakta yang memungkinkan Anda untuk memotong dan membuang, dan menggabungkan serta memasangkan data dengan beragam cara. Data pada sebuah database memiliki banyak makna. Bagaimanapun, menghubungkan banyak fakta dan data tidak bisa begitu saja disebut database. databse memiiki banyak tingkat kerumitan, dan dapat diperoleh secara manual atau dengan perangkat lunak pada sebuah komputer.

 

Pengaturan Data: Hierarki Penyimpanan Database

 

Apa saja unit datanya?dari yang terkecil sampai yang terbesar? Hierarki penyimpanan data terdiri atas level data yang disimpan dalam sebuah database komputer : bits, field, record, dan file.

 

Bit komputer seperti atas dasar prinsip bahwa listrik bisa dihidupkan dan dimatikan(prinsip saklar on/off). jadi bit adalah unit data terkecil yang bisa disimpan komputer.jadi,bit adalah unit data terkecil yang bisa disimpan dalam komputer yang direpresentasikan dengan lambang angka 0 (off) atau 1 (on).

 

Karakter
Suatu karakter (byte) adalah sebuah huruf atau angka atau karakter khusus, sebagai contoh: A,B,&,%,2,dll adalah contoh karakter tunggal. gabungan beberapa bit akan membentuk sebuah karakter.
bit dan byte merupakan dasar untuk menyajikan data baik data yang akan diproses, dikomunikasikan jarak jauh, atau disimpan dalam sebuah database. Komputer banyak berhubungan dengan bit dan byte namun user database, seperti Anda, akan banyak berhubungan dengan Field, record, dan file.

 

Field
Field adalah sebuah unit data yang berisi satu atau lebih karakter (byte). Ia merupakan unit terkecil dari informasi berharga dalam database. setiap field memiliki nama field yang menggambarkan jenis data yang harus dimasukkan ke dalam field. Contoh field adalah nama pertama Anda, alamat jalan, atau jenis kelamin Anda.
Field dapat didesain dengan panjang maksimun terntentu. Field juga dapat didesain dengan tipe data berbeda, semisal hanya teks, atau hanya angka, tanggal, waktu, atau bahkan hanya jawaban “ya” dan “tidak”, link web, gambar, suara dan video.

 

Record
Record adalah kumpulan field-field yang berhubungan. Masing-masing record menyimpan data hanya sekitar satu entitas, yang bisa erupa orang, tempat benda dan peristiwa atau gejala. Contoh record bisa saja nama dan alamat Anda dan Nomor Jaminan sosial Anda.

 

File
File adalah kumpulan record-record yang saling berhubungan. contoh sebuah file adalah data tentang siapa saja yang bekerja di departemen yang sama dalam sebuah perusahaan, termasuk nama, alamat, dan nomor jaminan sosial. File banyak digunakan karena ia merupakan kumpulan data atau informasi yang diperlakukan sebagai satau unit oleh komputer.
dalam hierarki data, file berada dalam bagian atas. Kumpulan file yang berhubungan membentuk suatu database.database sebuah perusahaan mencakup semua file pegawai sebelumnya dan pegawai saat ini di departemen. Setiap pegawai bisa punya beberapa file, sebagai contoh file upah, dana pensiun, kuota penjualan, dan penerimaan, dan sebagainya.

 

Key Field
apa itu key field?dan apa yang dapat menjadi key field saya yang terpenting?
Konsep yang penting dalam pengaturan data adalah key field. Key Field adalah field yang dipilih pada record sehingga record tersebut dapat dengan mudah diperoleh kembali dan diproses. Key field kadang berupa nomor identifikasi, nomor jaminan sosial, nomor induk pegawai, atau semacamnya. dari hal ini dapat ditarik kesimpulan bahwa key field memilik karakteristik unik (tidak ada yang sama satu sama lain). Key field lebih disukai berupa angka. Key field dapat terdiri dari lebih satu key.

 

Tipe File: File Program dan File Data

 

Apa Perbedaan File Program dan file Data?

 

File adalah kumpulan informasi yang oleh komputer diperlakukan sebagai satu uit. File diberi nama – nama file.
Nama File juga memiliki ekstensi, atau nama ekstensi.biasanya berupa tiga huruf setelah titik yang mengikuti nama file. misal .doc, yang dikenali Microsoft Word sebagai “document”. Ekstensi ini disisipkan secara otomatis oleh pengolah dokumen.

 

a.      File Program: Untuk instruksi perangkat lunak

 

File Program adalah file yang berisi instruksi perangkat lunak. Contohnya adalah pengolah kata atau program spreadsheet, yang terdiri beberapa program.
File program sumber: memuat instruksi komputer tingkat tinggi dalam format asli yang ditulis oleh programer.
Instruksi program sumber baru dapat digunakan setelah prosesor menerjemahkannya kedalam file yang dapat dieksekusi. File ini dapat dikenali melalui ekstensinya berupa .exe atau .com

 

b. File Data: untuk mengambil Data

 

File Data adalah file yang memuat data. tidak seperti file program, file data tidak menyuruh komputer untuk melakukan sesuatu. Akan tetapi file data akan berperan dalam file program. contoh ekstensi file data yang umum adalah: .txt, .doc, .xls, dsb

 

tiga file data yang memilik peran khusus adalah

 

File grafis: diantaranya: .bmp, .tiff, .jpeg, .png

 

file audio: diantaranya: .mp3, .wav, .midi

 

file video: diantaranya: .mpg, .wmv, .avi

 

Kompresi dan Dekompresi: menempatkan Lebih banyak data di ruang yang lebih kecil.
Bagaimana file besar dikompresi dan didekompresi?

 

Kompresi: adalah metode untuk memindahkan elemen-elemen secara berulang-ulang dari sebuah file sehingga file membutuhkan ruang penyimpanan yang lebih sedikit dan akhirnya membutuhkan waktu transmisi yang lebih singkat juga. Selanjutnya data akan didekompresi- pola yang berulang akan diperbaiki.

 

Kompresi lossless: saat melakukan kompresi menggunakan teknik matematis untuk mengganti pola bits berulang dengan ringkasan berkode. Selama dekompresi, ringkasan berkode diganti dengan pola asli dari bits. Dalam metode ini, data yang keluar sama dengan data yang masuk. teknik ini dilakukan untuk memastikan tidak ada data yang berkurang/hilang.
kompresi Lossy:Perbedaannya dengan kompresi lossless, teknik ini mebuang data secara permanen selama kompresi. Kelemahannya adalah hilangnya akurasi tertentu. Metode ini kerap dilakukan untuk kompresi file grafis dan suara.

 

 

 

tipe data (data type) selalu digunakan untuk menentukan jenis data dari suatu field dalam sebuah tabel. Terdapat sepuluh jenis tipe data dalam database yang disediakan Ms Access, yaitu :
 

 

·         AutoNumber

 

Menampilkan angka secara otomatis dimulai dari angka 1, dan dilanjutkan dengan angka 2, 3, 4, dan seteusnya.

 

·         Currency

 

Memnampung data digit, tanda minus, dan tanda titik desimal dengan 15 digit di sebelah kiri tanda titik desimal dan 4 digit di sebelah kanan titik desimal.

 

·         Date / Time

 

Menampung data tanggal, waktu, dan tahun dimulai dari 100 sampai dengan 9999.

 

·         Hyperlink

 

Menampung data teks berwarna, bergaris bawah, dan grafik.

 

·         Lookup Wizard

 

Menampilakan suatu tipe data dari banyak tipe data yang diambil dari tabel dan Query.

 

·         Memo

 

Menampung data teks (huruf, bilangan, tanda baca, dan simbol grafik) sebanyak 65535  karakter. Tipe ini tidak dapat diindeks.

 

·         Number

 

Menampung digit, tanda minus, dan titik desimal. Tipe ini memiliki 5 ukuran bilanngan dan jumlah digit.

 

·         OLE object

 

Menampung foto/gambar grafik, rekaman suara dan video, dan spreadsheet. Kapasitas maksimum data tipe ini adalah 1 Gb. Tipe ini tidak dapat diindeks.

 

·         Text

 

Menampung data teks (huruf, angka, dan simbol grafik) sebanyak 255 karakter. Standar karakter terpasang sebesar 50 karakter.

 

·         Yes / No

 

                  Menmpung salah satu dari dua yang ada Yes/No,

 

                 True/False, dan On/Off.

 

 

 

Pada artikel ini kita akan membahas tipe - tipe data yang didukung oleh MySQL. Pemilihan tipe data merupakan suatu hal yang cukup penting dalam mengelola server. Salah satu sebabnya adalah berkaitan dengan ruang di harddisk dan memori yang akan “digunakan” oleh data-data tersebut.

 

Berikut ini akan diberikan tipe-tipe data yang didukung oleh MySQL yang terambil dari dokumentasi MySQL. Tipe - tipe data ini diberikan dalam bentuk yang siap dituliskan pada sintaks-sintaks MySQL, misalnya Create Table. Pada tipe-tipe data tersebut terdapat beberapa atribut yang memiliki arti sebagai berikut:

 

  • M, menunjukkan lebar karakter maksimum. Nilai M maksimum adalah 255.
  • D,  menunjukkan jumlah angka di belakang koma. Nilai maksimum D adalah 30 tetapi dibatasi oleh nilai M, yaitu tidak boleh lebih besar daripada M-2.
  • Atribut yang diberi tanda [ dan ] berarti pemakaiannya adalah optional.
  • Jika atribut ZEROFILL disertakan, MySQL akan otomatis menambahkan atribut UNSIGNED.
  • UNSIGNED adalah bilangan tanpa tanda di depannya (misalnya tanda negatif).

 

Inilah tipe-tipe data tersebut:

 

  • TINYINT[(M)] [UNSIGNED] [ZEROFILL]

 

Integer yang sangat kecil jangkauan nilainya, yaitu -128 hingga 127. Jangkauan unsigned adalah 0 hingga 255.

 

  • SMALLINT[(M)] [UNSIGNED] [ZEROFILL]

 

Integer yang kecil jangkauan nilainya, yaitu -32768 hingga 32767. Jangkauan unsigned adalah 0 hinga 65535.

 

  • MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]

 

Integer tingkat menengah. Jangkauan nilainya adalah -8388608 hingga 8388607. Jangkauan unsigned adalah 0 hingga 16777215.

 

  • INT[(M)] [UNSIGNED] [ZEROFILL]

 

Integer yang berukuran normal. Jangkauan nilainya adalah -2147483648 hingga 2147483647. Jangkauan unsigned adalah 0 hingga 4294967295.

 

  • INTEGER[(M)] [UNSIGNED] [ZEROFILL]

 

Sama dengan INT.

 

  • BIGINT[(M)] [UNSIGNED] [ZEROFILL]

 

Integer berukuran besar. Jangkauan nilainya adalah -9223372036854775808 hingga 9223372036854775807. Jangkauan unsigned adalah 0 hingga 18446744073709551615.

 

  • FLOAT(precision) [ZEROFILL]

 

Bilangan floating-point. Tidak dapat bersifat unsigned. Nilai atribut precision adalah <=24 untuk bilangan floating-point presisi tunggal dan di antara 25 dan 53 untuk bilangan floating-point presisi ganda.

 

  • FLOAT[(M,D)] [ZEROFILL]

 

Bilangan floating-point presisi tunggal. Tidak dapat bersifat unsigned. Nilai yang diijinkan adalah -3.402823466E+38 hingga -1.175494351E-38 untuk nilai negatif, 0, and 1.175494351E-38 hingga 3.402823466E+38 untuk nilai positif.

 

  • DOUBLE[(M,D)] [ZEROFILL]

 

Bilangan floating-point presisi ganda. Tidak dapat bersifat unsigned. Nilai yang diijinkan adalah -1.7976931348623157E+308 hingga -2.2250738585072014E-308 untuk nilai negatif, 0, dan 2.2250738585072014E-308 hingga 1.7976931348623157E+308 untuk nilai positif.

 

  • DOUBLE PRECISION[(M,D)] [ZEROFILL] dan REAL[(M,D)] [ZEROFILL]

 

Keduanya sama dengan DOUBLE.

 

  • DECIMAL[(M[,D])] [ZEROFILL]

 

Bilangan floating-point yang “unpacked”. Tidak dapat bersifat unsigned. Memiliki sifat mirit dengan CHAR. Kata “unpacked'' berarti bilangan disimpan sebagai string, menggunakan satu karakter untuk setiap digitnya. Jangkauan nilai dari DECIMAL sama dengan DOUBLE, tetapi juga tergantung dai nilai atribut M dan D yang disertakan. Jika D tidak diisi akan dianggap 0. Jika M tidak diisi maka akan dianggap 10. Sejak MySQL 3.22 nilai M harus termasuk ruang yang ditempati oleh angka di belakang koma dan tanda + atau -.

 

  • NUMERIC(M,D) [ZEROFILL]

 

Sama dengan DECIMAL.

 

  • DATE

 

Sebuah tanggal. MySQL menampilkan tanggal dalam format 'YYYY-MM-DD'. Jangkauan nilainya adalah '1000-01-01' hingga '9999-12-31'.

 

  • DATETIME

 

Sebuah kombinasi dari waktu (jam) dan tanggal. MySQL menampilkan waktu dan tanggal dalam format 'YYYY-MM-DD HH:MM:SS'. Jangkauan nilainya adalah '1000-01-01 00:00:00' hingga '9999-12-31 23:59:59'.

 

  • TIMESTAMP[(M)]

 

Sebuah timestamp. Jangkauannya adalah dari '1970-01-01 00:00:00' hingga suatu waktu di tahun 2037. MySQL menampilkan tipe data TIMESTAMP dalam format YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD, atau YYMMDD, tergantung dari nilai M, apakah 14 (atau tidak ditulis), 12, 8, atau 6.

 

  • TIME

 

Tipe data waktu. Jangkauannya adalah '-838:59:59' hingga '838:59:59'. MySQL menampilkan TIME dalam format 'HH:MM:SS'.

 

  • YEAR[(2|4)]

 

Angka tahun, dalam format 2- atau 4-digit (default adalah 4-digit). Nilai yang mungkin adalah 1901 hingga 2155, 0000 pada format 4-digit, dan 1970-2069 pada format 2-digit (70-69).

 

  • CHAR(M) [BINARY]

 

String yang memiliki lebar tetap. Nilai M adalah dari 1 hingga 255 karakter. Jika ada sisa, maka sisa tersebut diisi dengan spasi (misalnya nilai M adalah 10, tapi data yang disimpan hanya memiliki 7 karakter, maka 3 karakter sisanya diisi dengan spasi). Spasi ini akan dihilangkan apabila data dipanggil. Nilai dari CHAR akan disortir dan diperbandingkan secara case-insensitive menurut default character set yang tersedia, kecuali bila atribut BINARY disertakan.

 

  • VARCHAR(M) [BINARY]

 

String dengan lebar bervariasi. Nilai M adalah dari 1 hingga 255 karakter. Jika nilai M adalah 10 sedangkan data yang disimpan hanya terdiri dari 5 karakter, maka lebar data tersebut hanya 5 karakter saja, tidak ada tambahan spasi.

 

  • TINYBLOB dan TINYTEXT

 

Sebuah BLOB (semacam catatan) atau TEXT dengan lebar maksimum 255 (2^8 - 1) karakter.

 

  • BLOB dan TEXT

 

Sebuah BLOB atau TEXT dengan lebar maksimum 65535 (2^16 - 1) karakter.

 

  • MEDIUMBLOB dan MEDIUMTEXT

 

Sebuah BLOB atau TEXT dengan lebar maksimum 16777215 (2^24 - 1) karakter.

 

  • LONGBLOB dan LONGTEXT

 

Sebuah BLOB atau TEXT dengan lebar maksimum 4294967295 (2^32 - 1) karakter.

 

  • ENUM('value1','value2',...)

 

Sebuah enumerasi, yaitu objek string yang hanya dapat memiliki sebuah nilai, dipilih dari daftar nilai 'value1', 'value2', ..., NULL atau nilai special "" error. Sebuah ENUM maksimum dapat memiliki 65535 jenis nilai.

 

  • SET('value1','value2',...)

 

Sebuah set, yaitu objek string yang dapat memiliki 0 nilai atau lebih, yang harus dipilih dari daftar nilai 'value1', 'value2', .... Sebuah SET maksimum dapat memiliki 64 anggota.

 


Nah, dengan mengenal tipe-tipe data yang didukung oleh MySQL, Anda dapat dengan tepat memilih tipe data yang Anda butuhkan dalam menyusun sebuah database.

 

Misalnya Anda hendak menyimpan data jumlah suatu stok barang yang tidak melebihi angka 200 misalnya, maka sebaiknya Anda memilih tipe data TINYINT yang diberi atribut UNSIGNED. Alasannya adalah jumlah stok tidak melebihi 200 dan tidak mungkin lebih kecil dari 0, dan tipe data TINYINT memiliki jangkauan 0 hingga 255, jadi memenuhi syarat untuk digunakan.

 

Contoh yang lain, misalnya Anda hendak membuat database nomor telpon dari teman-teman Anda. Memang nomor telpon seluruhnya terdiri dari angka, namun nampaknya tidak tepat bila disimpan dalam tipe data INT (atau bahkan BIGINT bila hendak menyimpan nomor handphone). Lebih baik dimasukkan ke dalam CHAR atau VARCHAR dengan M adalah 12. Mengapa 12? Karena nomor handphone terpanjang terdiri dari 12 digit. Sedangkan nomor telpon rumah terpanjang adalah 8 digit ditambah kode area terpanjang 4 digit, jadi angka 12 sangat pas.

 

Lalu bagaimana penerapannya dalam operasi MySQL? Misalnya Anda hendak membuat tabel stok barang dengan masing-masing field adalah kode barang, nama barang, harga barang, supplier, dan tanggal beli, maka kemungkinan perintah yang harus ditulis adalah sebagai berikut:

 

mysql> create table stok(
    -> kode char(5),
    -> nama varchar(20),
    -> harga mediumint unsigned,
    -> supplier char(5),
    -> tanggal date);

 

Perintah tersebut di atas akan membuat tabel bernama stok dengan field-field sebagai berikut:

 

Nama field

Tipe data

Keterangan

Kode

Char(5)

Kode barang biasanya memiliki jumlah karakter tetap, dalam contoh ini adalah 5.

Nama

Varchar(20)

Nama barang kemungkinan besar memiliki jumlah karakter yang berbeda-beda, sehingga cocok menggunakan varchar.

Harga

Mediumint Unsigned

Harga tergantung dari jenis barangnya, pada contoh ini dianggap harga barang tertinggi di bawah 100 jutaan.

Supplier

Char(5)

Supplier biasanya juga dituliskan dalam kode tertentu yang jumlah karakternya tetap.

Tanggal

Date

Tanggal pembelian. Umumnya waktu pembelian tidak perlu disertakan, hanya tanggalnya saja.

 

Nah, sudah dijelaskan diatas tipe - tipe operasi data Database MySQL server, selamat mencoba :D. Artikel selanjutnya akan membahas Implementasi koneksi PHP ke Database MySQL.