Archive for Juli 2019

Tipe Data #MySQL




TIPE DATA PADA MYSQL
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);


Statement #Pascal



Statemen Pada Pascal

Statemen adalah perintah untuk pengerjaan program pascal. Statemen terletak di bagian deklarasi statemen dengan diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END. Akhir dari setiap statemen diakhiri dengan titik koma [;]. Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal.
1. Statemen-statemen yang digunakan untuk input/output.
# Read/Readln [prosedur].
Perintah ini digunakan untuk memasukkan [input] data lewat keyboard ke dalam suatu variabel.
Sintaks: Read/Readln(x); (ingat, selalu diakhiri dengan titik koma [;])
Keterangan : x = variabel.
Read = pada statemen ini posisi kursor tidak
pindah ke baris selanjutnya.
Readln = pada statemen ini posisi kursor akan
pindah ke baris selanjutnya setelah di
input.
# ReadKey [fungsi].
Untuk pembacaan sebuah karakter dari keyboard. Tipe data
yang dihasilkan adalah char.
Sintaks: ReadKey;
# Write/Writeln [prosedur].
Digunakan untuk menampilkan isi dari suatu nilai variable di
layar.
Sintaks: Write/Writeln(x);
Keterangan : x = variabel.
Write/Writeln = statement ini digunakan untuk mencetak
variable ke dalam monitor
Contoh :
Program input;
Uses Crt;
Var nm : String;
npm : String;
Begin
Clrscr;
Writeln (‘masukkan nama dan NPM ‘);
Writeln (‘——————————‘);
Write (‘nama anda : ‘);
Readln (nm);
Writeln (‘NPM anda : ‘);
Readln (npm);
End.
Bila dijalankan hasilnya adalah:
masukkan nama dan NPM
——————————
nama anda : ( di input )
NPM anda : ( di input )
2. Statemen-statemen yang digunakan untuk pengaturan letak layar.
# ClrScr [prosedur].
Perintah ini digunakan untuk membersihkan layar.
sintaks: ClrScr; ..[Clear screen]
# GotoXY[prosedur].
Untuk menempatkan posisi kursor pada layar.
Sintaks: GotoXY(X, Y: Byte);
Keterangan : X = sumbu X (posisi horisontal)
Y = sumbu Y (posisi vertikal)
# DelLine [prosedur].
Untuk menghapus sebuah baris pada posisi kursor dan menaikkan
baris-baris dibawahnya.
Sintaks: DelLine;
# InsLine [prosedur].
Untuk menyisipkan sebuah baris pada posisi kursor dan meng-
geser kebawah tampilan-tampilan baris dibawahnya.
Sintaks: InsLine;
# Delay [prosedur].
Untuk menghentikan sejenak proses program.
Sintaks: Delay (MS: Word);
Keterangan : variable MS = ukuran waktu dalam milisecond.
Contoh :
Program Layar;
Uses Crt;
Var x : Char;
Begin
ClrScr;
GotoXY(35,10);Writeln (‘I Love Dinda’);
Write (tunggu sebentar…!!’);
Delay (5000);
InsLine;
GotoXY (35,11);Writeln (‘Aku sayang kamu’);
GotoXY(01,13);Writeln (‘Tekan Enter !’);
Delay(1000);
GotoXY(15,12);
DelLine;
Read(x);
End.
Hasilnya adalah :
I Love Dinda
tunggu sebentar…!!
Aku sayang kamu
Tekan Enter !
3. Statemen yang digunakan untuk memanipulasi string.
# ConCat[fungsi].
Untuk menggabungkan 2 atau beberapa variabel string.
Sintaks: ConCat (s1 [,s2,…,sn]: String) : String;
contoh: ConCat (‘ABC’,’DEF’) { ABCDEF }
# Copy [fungsi].
Mengambil satu atau beberapa karakter dari sebuah string.
Sintaks: Copy (S,Index,Count) : String;
Keterangan :
S = sebuah string (string).
Index = posisi awal kita akan mengambil beberapa
karakter (integer)
Count = banyaknya karakter yang akan diambil (integer).
# Delete [prosedur].
Menghapus sebagian karakter dari sebuah string.
Sintaks: Delete (S,Index,Count);
Keterangan : sama dengan statemen Copy.
# Insert [prosedur].
Menyisipkan satu atau beberapa karakter ke dalam sebuah string.
Sintaks: Insert (Source,var S,Index);
Keterangan : Source = sumber string untuk disisipi (string)
var S = string tujuan yang akan disisipi oleh
string Source (string)
Index = posisi mulai (integer).
# Length [fungsi].
Memberikan nilai panjang dari suatu string (jumlah karakter dalam string).
Sintaks: Length (S);
Keterangan : S = string
Length(S) menghasilkan nilai integer.
# Pos [fungsi].
Mencari posisi sebuah bagian string (substring) didalam
sebuah string.
Sintaks: Pos (Substr,S); {menghasilkan nilai Byte}
Keterangan : Substr = substring yang akan dicari posisinya di
dalam sebuah string S.
Bila bernilai 0 berarti nilai string yang dicari tidak ada.
# Str [prosedur].
Merubah nilai numerik ke dalam nilai string.
Sintaks: Str (N,S);
Keterangan :
N = data tipe integer,
S = data tipe string.
# Val [prosedur].
Merubah nilai string ke dalam nilai numerik.
Sintaks: Val (S,N,P);
Keterangan :
S = nilai string,
N = nilai real,
P = posisi salah.
Nilai string harus berisi angka, plus atau minus, bila tidak
berarti kesalahan dan letak kesalahannya ditunjukkan oleh va-
riabel posisi salah. Jika benar, maka nilai variabel tsb = 0
(nol).
# UpCase [fungsi].
Memberikan huruf kapital dari argumen.
Sintaks: UpCase (S);
Keterangan :
S = variabel bertipe karakter.
Contoh :
Program Man_String;
Uses Crt;
Var s : String;
l : Integer;
h : String;
Const a=’Dinda’;
b=’Bayi ‘;
c=’Sehatku’;
Begin
ClrScr;
s:= ConCat (a,b,c);
Writeln (s);
Insert (‘ & ‘,s,6);
Writeln(s);
Delete (s,7,7);
Writeln (s);
h:=Copy (s,1,5);
Writeln (h);
l:= Length(s);
Writeln (‘Panjangnya string S : ‘,l);
Writeln (‘Posisi “Sehat” pada nilai S : ‘,POS(‘Sehat’,s));
End.
Hasilnya adalah :
DindaBayiSehatku
Dinda & Bayi Sehatku
Dinda Sehatku
Dinda
Panjangnya string S : 16
Posisi “Sehat” pada nilai S : 7
4. Statemen-statemen untuk perhitungan aritmatik.
# Abs [fungsi].
Memberikan nilai mutlak dari suatu argumen.
Sintaks: ABS(x);
# ArcTan[fungsi].
Memberikan nilai dari fungsi arctangent dari perhitungan
goniometri.
Sintaks: ArcTan (x);
dimana x dapat bertipe real atau integer dan akan menghasil-
kan nilai bertipe real.
# Cos [fungsi].
Memberikan nilai dari fungsi Cosinus.
Sintaks: Cos (x);
# Exp [fungsi].
Menghitung nilai pangkat dari bilangan e (bilangan alam),
yaitu sebesar x.
Sintaks: Exp (x);
x dapat bertipe real atau integer dan akan menghasilkan
nilai bertipe real.
# Frac [fungsi].
Untuk mendapatkan nilai pecahan dari suatu bilangan.
Sintaks: Frac (x);
Tipe dari x sama seperti yang diatas.
# Int [fungsi].
Memberikan nilai integer (bilangan bulat) dari suatu variabel
dengan membuang bilangan di belakang koma.
Sintaks: Int (X);
# Ln [fungsi].
Digunakan untuk menghitung nilai logaritma alam (natural
logarithm) dari nilai x.
Sintaks: Ln (x);
# Sin [fungsi].
Memberikan nilai dari fungsi Sinus.
Sintaks: Sin (x);
# Sqr [fungsi].
Digunakan untuk menghitung nilai pangkat kuadrat dari suatu
bilangan.
Sintaks: Sqr (x);
Tipe dari x bisa berupa real maupun integer. Dan hasilnya a-
kan sama dengan tipe dari x.
# Sqrt (fungsi).
Digunakan untuk menghitung nilai akar dari suatu bilangan.
Sintaks: Sqrt (x);
Contoh :
Program Aritmatik;
Uses Crt;
Var x : Real;
Begin
Clrscr;
Write(‘Masukkan nilai dari X = ‘);
Readln (x);
If x <0 Then x:=Abs (x);
Writeln(‘Nilai X = ‘,x:5:2);
Writeln (‘Nilai eksponentialnya = ‘,EXP(x):9:3);
Writeln (‘Nilai logaritma alamnya = ‘,LN(x):9:3);
Writeln (‘Nilai integernya = ‘,INT(x):5:2);
Writeln (‘Nilai fraksionalnya = ‘,FRAC(x):5:2);
Writeln (‘Nilai X dipangkatkan = ‘,SQRT(x):9:3);
Writeln (‘Nilai X diakarkan = ‘,SQRT(x):9:3);
Write(‘Nilai X jika dimasukkan dalam ‘);
Writeln(‘fungsi Sin,Cos,Tangen: ‘);
Writeln(‘- Sinus = ‘,Sin(x):9:3);
Writeln(‘- Cosinus = ‘,Cos(x):9:3);
Writeln(‘- Tangen = ‘,ArcTan(x):9:3);
End.
Hasilnya :
masukkan nilai dari X = -2.5
Nilai X = 2.50
Nilai eksponensialnya = 12,182
Nilai logarima alamnya = 0,196
Nilai integernya = 2.00
Nilai fraksionalnya = 0.50
Nilai X dipangkatkan = 6.250
Nilai X diakarkan = 1.581
Nilai X jika dimasukkan dalam fungsi Sin,Cos,Tangen:
– Sinus = 0.598
– Cosinus = -0.801
– Tangen = 1.190
5. Statemen-statemen untuk transfer nilai dari suatu variabel.
# Chr [fungsi].
Merubah nilai dari byte ke bentuk karakter yang sesuai dengan kode ASCII.
Sintaks: Chr (x);
Keterangan : x bertipe byte
contoh : Writeln (Chr (61));
hasilnya : a
# Ord [fungsi].
Merubah nilai suatu variabel dari bentuk karakter ke bentuk
longint.
Sintaks: Ord (x);
Keteranagn : x bertipe char
contoh : Writeln(Ord (‘B’)); hasilnya : 42
# Round [fungsi].
Membulatkan data tipe real ke data tipe longint.
Sintaks: Round (x);
Keterangan : Jika nilai pecahan < 0,5 maka dibulatkan kebawah. Jika nilai pecahan > 0,5 maka dibulatkan keatas.
contoh : Writeln(’10/3 dibulatkan = ‘,Round(10/3));
hasilnya : 10/3 dibulatkan = 3
# TRUNC [fungsi].
Membulatkan kebawah data tipe real ke data tipe longint.
Sintaks: Trunc (x);
contoh :
Writeln(’20/3 dibulatkan kebawah = ‘,
Trunc (20/3));
hasilnya : 20/3 dibulatkan kebawah = 6
6. Statemen-statemen untuk memanipulasi data.
# Pred [fungsi].
Memberikan nilai sebelum nilai argumen dalam urutannya dalam
ASCII.
Sintaks: Pred (x);
# Succ [fungsi].
Memberikan nilai sesudah nilai argumen dalam urutannya dalam
ASCII.
Sintaks: Succ (x);
# Inc[fungsi].
Menambah (increments) nilai suatu variabel.
Sintaks: Inc (x,i); {i >= 1}
# Dec [fungsi].
Mengurangi (decrements) nilai suatu variabel.
Sintaks: DEC(x,i); {i >=1}

Terima kasih telah membaca artikel ini semoga berguna untuk anda.

- Copyright © Dzakzz_ -