Saturday, November 3, 2012

Database mySQL


Membuat Database
create database <nama_database>

Contoh :

create database demo;
Mengaktifkan Database
Untuk melakukan manipulasi database, kita harus masuk ke database yang dituju dengan menggunakan sintaks sebagai berikut :
use <nama_database>

Contoh :

use demo;
Membuat Tabel
Setelah database dibuat, Anda harus membuat tabel yang akan menyimpan data yang dibutuhkan. Sebagai contoh akan kita buat tabel untuk buku tamu atau gbook
Field Type Panjang Keterangan
nama varchar 30 Nama pengisi
mail varchar 30 Alamat email pengisi
alamat varchar 50 Alamat surat pengisi
komentar text - Komentar

create table gbook(
nama varchar(30),
mail varchar(30),
alamat varchar(50),
komentar text);

Query OK, 0 rows affected (0.06 sec)
Maka tabel gbook telah dibuat dengan data masih kosong.
Memasukkan Data
Untuk mengisi data pada suatu tabel, gunakan perintah INSERT :
INSERT INTO <nama tabel> (kolom1, kolom2, …) VALUES (nilai1, nilai2, …);

Contoh :

insert into gbook(nama, mail, alamat, komentar) values('saya','saya@disini.com','bandung','webnya bagus');

untuk data yang bertipe char harus diapit dengan tanda kutip (') sedangkan jika data yang dimasukkan bertipe numerik, tidak usah.
Menampilkan Data
Untuk menampilkan data gunakan perintah SELECT :
SELECT kolom1, kolom2,… FROM <nama tabel>;

Contoh :

SELECT nama, mail FROM gbook;

Untuk menampilkan seluruh field/kolom, pada pengisian nama2 kolom dapat diganti dengan tanda bintang (*) :

SELECT * FROM gbook;
Menampilkan data dengan kriteria tertentu
Terkadang kita ingin menampilkan data2 pada database kita dengan ketentuan2 khusus atau kriteria2 tertentu. Misalkan suatu saat kita ingin menampilkan daftar pengisi buku tamu kita yang berasal dari bandung. Dengan menambahkan perintah WHERE kita dapat melakukannya.

Contoh :

SELECT * FROM gbook WHERE alamat = ‘bandung’;
Menampilkan Tanpa Berulang
Untuk menampilkan data tanpa mengulang record2 yang sama, gunakan perintah DISTINCT :

SELECT DISTINCT alamat from gbook;
Expresi pada Query
Tampilan query dapat juga kita manipulasi, misalnya pada suatu tabel terdapat field harga, dan kita ingin mengalikan harga tsb misalnya dengan 10%, kita dapat menampilkannya dengan cara :

SELECT harga, harga*0.1 FROM biaya;
Operator LOGIC
Operator ini misalnya kita gunakan untuk menampilkan data dengan dua atau lebih kriteria tertentu. Misalnya kita ingin melihat data pada buku tamu kita dengan nama deni dan alamat bandung, :

SELECT * FROM gbook WHERE nama = ‘deni’ AND alamat = ‘bandung’;
atau
SELECT * FROM gbook WHERE nama = ‘deni’ OR alamat = ‘bandung’;
BETWEEN
Keyword ini dapat digunakan untuk membatasi tampilan data pada suatu batas nilai tertentu. Misalnya pada suatu tabel terdapat field biaya, dan kita ingin menampilkan data dengan biaya antara 10 sampai 40 maka digunakan sintak sebagai berikut :

SELECT nama_barang, biaya FROM tbarang WHERE biaya BETWEEN 10 and 40;
LIKE
Keyword ini digunakan untuk mencari data dengan pola tertentu. Misalnya kita ingin mencari data yang mengandung kata ‘ban’, digunakan sintaks berikut :

SELECT * FROM gbook WHERE alamat LIKE ‘%ban%’;
Atau misalnya kita ingin menampilkan data buku tamu yang namanya berawalan huruf “A” maka digunakan sintaks sbb :
SELECT * FROM gbook WHERE nama LIKE ‘A%’;
Mengurutkan Data
SELECT * FROM gbook ORDER BY nama;
SELECT * FROM gbook ORDER BY nama DESC;
Fungsi Agregate
  • Untuk menampilkan rata-rata gunakan perintah avg(nama_field)
  • Untuk menampilkan Jumlah record, gunakan perintah count(*)
  • Untuk menampilkan jumlah expresi numerik, gunakan perintah sum(nama_field) Menghapus Record
    Untuk menghapus record dengan kriteria tertentu, gunakan sintaks berikut :
    DELETE FROM nama-tabel WHERE kriteria

    Misalnya kita ingin menghapus seluruh data pada buku tamu kita yang beralamat di bandung maka digunakan sintaks :

    DELETE FROM gbook WHERE alamat= ‘bandung’;

    :: Referensi Perintah mySQL
    ALTER / MODIFY
    ALTER TABLE tabel ADD perintah
    ALTER TABLE tabel ADD INDEX [nama] (kolom, ...)
    ALTER TABLE tabel ADD UNIQUE [nama] (kolom, ...)
    ALTER TABLE tabel ALTER kolom SET DEFAULT nilai
    ALTER TABLE tabel ALTER kolom DROP DEFAULT
    ALTER TABLE tabel CHANGE kolom perintah
    ALTER TABLE tabel DROP kolom
    ALTER TABLE tabel DROP FOREIGN KEY sintak
    ALTER TABLE tabel DROP INDEX sintak
    ALTER TABLE tabel DROP PRIMARY KEY
    ALTER TABLE tabel MODIFY perintah
    ALTER TABLE tabel RENAME nama_baru


    Perintah ini sangat luas cakupannya dalam memberikan perubahan pada struktur tabel yang ada seperti menambahkan, mengubah, atau memindahkan kolom dari suatu tabel. Perintah ini bisa digunakan secara berurutan seperti contoh:
    ALTER TABLE tabel DROP koloml, ADD kolom2 INT
    
    CREATE
    CREATE DATABASE nama_database
    CREATE TABLE nama_tabel ( nama_field, :.. )
    CREATE INDEX nama index ON tabel ( kolom, ... )
    CREATE FUNCTION nama-fungsi RETURNS nilai SONAME library


    CREATE DATABASE membuat database yang baru dan kosong.
    CREATE TABLE membuat tabel baru yang terstruktur dalam suatu database yang dikehendaki user.
    CREATE INDEX memberikan kompabilitas terhadap implementasi SQL.
    CREATE FUNCTION membuat perintah MySQL untuk bisa mengakses suatu fungsi yang belum dikompilasi. Dan fungsi ini bisa berupa operasi apapun yang tergantung oleh user. DELETE
    DELETE FROM table [WHERE clausa]

    Menghapus suatu baris dari suatu tabel. Jika tanpa disertai oleh sintak WHERE clausa maka perintah ini akan menghapus seluruh isi tabel dan membuat tabel baru yang kosong. DESCRIBE/DESC
    DESCRIBE tabel [kolom]
    DESC tabel [kolom]


    Memberikan Informasi tentang suatu tabel beserta isi kolom-kolomnya. DESCRIBE/DESC
    DESCRIBE tabel [kolom]
    DESC tabel [kolom]


    Memberikan Informasi tentang suatu tabel beserta isi kolom-kolomnya. DROP
    DROP DATABASE nama_database
    DROP INDEX nama_index
    DROP TABLE nama_tabel
    DROP FUNCTION nama_fungsi


    Perintah ini secara permanen menghilangkan database, tabel, index atau fungsi dari sistem MySQL. EXPLAIN
    EXPLAIN SELECT sintak

    Menampilkan secara detail informasi tentang struktur dari perintah SELECT FLUSH
    FLUSH option

    Melakukan reset terhadap beberapa proses2 internal sesuai opsi yang diberikan. Opsi-opsi-nya antara lain:
    HOST mengosongkan tabel cache yang meyimpan data nama host dari klien
    LOGS menutup semua file2 log dan membukanya kembali
    PRIVILEGES membuka kembali semua permisi internal MySQL dari tabel grant
    STATUS melakukan reset terhadap status yang selalu mengamati suatu keadaan di server
    TABLES menutup semua tabel yang telah dibuka GRANT
    GRANT privilege [(kolom, ... )] [, privilege [(kolom, ... )] ... ] ON {table} TO user [IDENTIFIED BY 'password'] [, user [IDENTIFIED BY 'password'] ...] [WITH GRANT OPTION]

    Mengaktifkan hak akses kepada user tertentu yang bisa hak untuk mengakses database, tabel atau kolom. INSERT
    INSERT [INTO] tabel [(kolom, ... )] VALUES (nilai) [,(nilai)... ]
    INSERT [INTO] tabel [(kolom, ... )] SELECT ...
    INSERT [INTO] tabel SET kolom=nilai, kolom=nilai, ...


    Memasukkan data ke dalam tabel KILL
    KILL thread_id

    Menghentikan suatu thread. ID dari thread tersebut bisa ditampilkan dengan perintah SHOW PROCESSES. LOAD
    LOAD DATA [LOCAL] INFILE file (REPLACE|IGNORE] INTO TABLE tabel [delimiter] [(kolom)]

    Membaca suatu file text yang formatnya bisa terbaca dan memasukkannya ke dalam suatu tabel di database tertentu. LOCK
    LOCK TABLES nama_tabel [AS alias] READ|WRITE [, nama2 [AS alias] READ|WRITE, ...]

    Mengunci tabel untuk kepentingan suatu thread tertentu. OPTIMIZE
    OPTIMIZE TABLE nama_tabel

    Membuat kembali suatu tabel yang dihilangkan semua space kosong. REPLACE
    REPLACE INTO tabel [(kolom, ... ) VALUES (nilai, ... )
    REPLACE INTO tabel [(kolom, ... ) SELECT sintak_select


    Hampir sama dengan perintah INSERT yang memasukkan data ke dalam tabel tetapi jika ada nilai yang konflik dengan yang lama, maka yang lama akan digantikan dengan yang baru. REVOKE
    REVOKE privilege [(kolom, ...)] [,privilege [(kolom, ...) ...] ON tabel FROM user

    Menghilangkan privilege dari user yang telah diset oleh perintah GRANT SELECT
    SELECT [STRAIGHT_JOIN] [DISTICTIALL] nilai[, nilai2,...]
    INTO OUTFILE 'nama_file' delimiters] FROM tabel[,tabe12...] [clausa]


    Mengambil data dari suatu database. Perintah ini adalah metoda utama untuk membaca data dari sutau tabel database. Jika anda mencantumkan 2 tabel sekaligus, maka secara otomatis perintah ini akan membandingkan kedua tabel tersebut. Hasil-hasil dari perintah SELECT ini bisa berupa:

    alias semua nama kolom yang komplek atau fungsi bisa disederhanakan dengan membuat alias. Contohnya : SELECT DATE FORMAT (date, "%W, %M, %d, %Y) AS nice date FROM kalender
    nama kolom Bisa berupa kolom, tabel.kolom atau database.tabel.kolom seperti contoh berikut ini : SELECT nama FROM orang; SELECT dataku.orang.nama FROM orang
    fungsi MySQL didukung oleh berbagai fungsi2 antara lain fungsi2 matematika dan masih banyak lainnya. Contoh sebagai berikut SELECT COS(sudut) FROM nama_tabel

    Perintah ini juga bisa memberikan suatu perintah pencarian data dengan clausa-clausa tertentu seperti tertera dalam subbahasan di bawah ini:

    WHERE clausa
    Pernyataan ini sangat umum digunakan untuk mencari data yang diinginkan di dalam MySQL baik untuk membandingkan beberapa tipe data atau dengan menggunakan fungsi-fungsi yang tertera dalam daftar di bawah ini
      () dalam kurung digunakan untuk mengumpulkan data yang lebih utama
      + menambahkan antara dua nilai
      - mengurangkan antara dua nilai
      * mengalikan antara dua nilai
      / membagi antara dua nilai
      % memberikan nilai persentase
      | memberikan OR antara dua nilai integer
      & memberikan AND antara dua nilai integer
      NOT memberikan perintah logic NOT
      OR memberikan perintah logic OR
      AND memberikan perintah logic AND
      = kesamaaan nilai atau hasil
      <> ketidaksamaan nilai
      <= nilai di sebelah kiri lebih kecil atau sama dengan nilai di kanan
      < nilai di sebelah kiri lebih kecil dari sebelah kanan
      >= nilai di sebelah kiri lebih besar atau sama dengan nilai di kanan
      > nilai di sebelah kiri lebih besar dari sebelah kanan

    nilai BETWEEN nilail AND nilai2
    mencari baris dimana nilai adalah sebuah besaran antara nilail dan nilai2

    nilai IN (nilail, nilai2,...)
    mencari baris dimana nilai sesuai dengan nilai-nilai yang diberikan

    nilai NOT IN (nilail, nilai2...)
    mencari baris dimana nilai tidak sesaui dengan dengan nilai-nilai yang diberikan

    nilai1 LIKE nilai2
    membandingkan nilai dan nilai2 lalu mencari baris yang merupakan hasilnya

    nilail NOT LIKE nilai2
    membandingkan nilai1 dan nilai2 jika keduanya berbeda maka mencari baris yang merupakan hasilnya

    GROUP BY kolom[, koloml,...]
    mengumpulkan semua baris yang berisi data di dalam kolom yang dituju seperti contoh berikut :
    SELECT nama,MAX(umur) FROM orang GROUP BY nama

    HAVING clausa
    hampir sama dengan pemyataan WHERE tetapi hanya berfungsi pada data yang sudah diambil dari database. Sangat efektif digunakan dalam penggunakan pencarian data agregat pada tabel yang banyak kolom. Contoh sebagai berikut :
    SELECT nama, MAX(umur) FROM orang GROUP BY nama HAVING MAX(umur)>80

    ORDER BY kolom [ASC|DESC][,kolom2 [ASC|DESC].... ]
    mengurutkan data pada kolom tertentu. DESC merupakan pengurutan dari besar ke kecil, ASC adalah sebaliknya. Contoh sebagai berikut :
    SELECT nama,umur FROM orang ORDER BY umur DESC

    SELECT juga mendukung konsep fungsi.
    Berikut ini daftar fungsi yang telah dimasukkan ke dalam MySQL:

    ABS(angka)
    menghasilkan nilai absolut dari bilangan

    ACOS(angka)
    menghasilkan cosinus invers dari angka dalam radian

    ASCII(char)
    menghasilkan nilai ASCII dari karakter yang diberikan

    ASIN(angka)
    menghasilkan sinus invers dari angka dalam radian

    ATAN(angka)
    menghasilkan tangen invers dari angka dalam radian

    ATAN2(X, Y)
    menghasilkan tangen invers dari titik (X,Y)

    CHAR(num[,num2,num3.... ])
    menghasilkan karakter dari nilai num yang berupa nilai ASCII

    CONCAT(stringl,string2[,string3.... ])
    menghasilkan hasil penggabungan semua argumen string yang ada

    CEILING(angka)
    menghasilkan nilai integer yang terdekat ke angka

    COS(radian)
    menghasilkan nilai cosinus dari angka yang diberikan dalam bentuk radian

    COT(radian)
    menghasilkan nilai cotangen dari angka yang diberikan dalam bentuk radian

    CURDATE()/CURRENT()
    menghasilkan informasi tanggal saat sekarang dalam bentuk YYYYMMMDD

    CURTIME()/CURRENT_TIME()
    menghasilkan informasi waktu saat sekarang dalam bentuk HHMMSS

    DATABASE()
    menghasilkan nama dari database yang sekarang di akses

    DATE_FORMAT(date, format)
    menghasilkan data yang diformat seperti yang telah diberikan di atas perintah tersebut. Format string-nya sebagai berikut
      %a nama hari (Sun, Mon, dll.)
      %b nama bulan (Jan, Feb, dll.)
      %D hari dengan urutan tingkatan (1st, 2nd , 3rd, dll.)
      %d hari
      %H format 24-jam dari satuan jam
      %h format 12 jam dari satuan jam
      %i menit
      %M nama bulan (January, February, dll.)
      %m urutan dari bulan dalam setahun (January adalah urutan 1)
      %p AM atau PM
      %r format 12 jam dari satuan jam termasuk notasi AM/PM
      %S detik dalam dua digit
      %s detik dalam satu digit
      %T format 24 jam total dan lengkap
      %Y tahun dalam format empat digit
      %y tahun dalam format dua digit
    DEGREES(radian)
    menghasilkan hasil konversi radian ke bentuk derajat

    ENCRYPT(string[,salt])
    enkripsi dari string yang biasanya adalah password user

    EXP(pangkat)
    menghasilkan angka eksponensial yang dipangkatkan dengan nilai pangkat yang diberikan

    FLOOR(angka)
    menghasilkan integer terbesar yang lebih kecil atau sama dengan angka

    GREATEST(argl, arg2[,arg3,arg4.... ])
    menghasilkan nilai numerik yang paling besar dari seluruh argumen yang dimunculkan

    HEX(desimal)
    menghasilkan nilai heksadesimal dari nilai desimal yang diberikan

    IF(test, nilail, nilai2)
    jika test bernilai TRUE maka menghasilkan nilail, jika sebaliknya maka menghasilkan nilai2. Nilai test disini diasusmsikan sebagai integer

    LAST_INSERT_ID()
    menghasillcan nilai terakhir yang secara otomatis dihasilkan oleh field AUTO_INCREMENT

    LCASE(string)/LOWER(string)
    menghasilkan string dengan semua karakternya dalam huruf kecil

    LOG(angka)
    menghasilkan nilai logaritma dari angka

    LOG10(angka)
    menghasilkan nilai logaritma 10 dari angka

    MOD(angkal, angka2)
    menghasilkan sisa pembagian angkal oleh angka2

    NOW()/SYSDATE()/CURRENT_TIMESTAMP()
    menghasilkan informasi tanggal dan waktu pada waktu saat ini dalam format YYYY MM-DD HH:MM:SS

    OCT(desimal)
    menghasilkan nilai octal dari angka desimal yang diberikan

    PASSWORD(string)
    menghasilkan bentuk password-terencripsi dari string yang ada.

    PI()
    menghasilkan nilai dari pi (π) = 3,141593

    POW(angkal, angka2)/POWER(angkal, angka2)
    menghasilkan nilai dari angkal dipangkat oleh angka2.

    RADIANS(sudut)
    menghasilkan nilai radian dari argumen sudut

    REPEAT(string, angka)
    menghasilkan bentuk perulangan dari string sebanyak angka kali

    ROUND(angka[,desimal])
    menghasilkan nilai angka yang dibulatkan ke sebanyak angka desimal

    SEC_TO_TIME(detik)
    menghasilkan nilai satuan jam dari jumlah detik yang diberikan dalam format HH:MM:SS

    SIN(radian)
    menghasilkan nilai sinus dari radian.

    TAN(radian)
    menghasilkan nilai tangensial dari radian

    TIME-TO-SEC(jam)
    menghasilkan nilai waktu dalam detik dari format jam HH:MM:SS

    TRUNCATE(angka, string)
    menghasilkan angka yang telah dipotong panjang desimalnya sepanjang string desimal

    UCASE(string)/UPPER(string)
    menghasilkan karakter dari string dalam bentuk huruf besar.

    USER()/SYSTEM_USER()/SESSION USER()
    menghasilkan nama dari user yagn sedang bekeda

    VERSION()
    menghasilkan informasi versi MySQL yang sedang digunakan.
    Berikut ini daftar fungsi agregat untuk mencari data-data dalam database yang telah dibuat sebelumnya. Contohnya sebagai berikut : "SELECT AVG (tingqi ) FROM anak_kecil" menghasilkan nilai rata-rata dari field 'tinggi' yang ada di dalam tabel 'anak_kecil'

    AVG(ekspresi)
    menghasilkan nilai rata-rata dari ekspresi yang ada

    BIT_AND(ekspresi)
    menghasilkan nilai rata-rata AND dari ekspresi yang ada

    BIT_OR(ekspresi)
    menghasilkan nilai rata-rata OR dari ekspresi yang ada

    COUNT(ekspresi)
    menghasilkan jumlah dari ekspresi yang not null

    MAX(ekspresi)
    menghasilkan nilai terbesar dari ekspresi yang ada

    MIN(ekspresi)
    menghasilkan nilai terkecil dari ekspresi yang ada

    STD(ekspresi)/STDEV(ekspresi)
    menghasilkan nilai standar deviasi dari ekspresi yang ada

    SUM(ekspresi)
    menghasilkan penjumlahan semua nilai yang ada di dalam ekspresi SET
    SET OPTION SQL_OPTION=nilai

    Mendefinisikan sutu opsi dari sesi yang sedang dikerjakan. Berikut ini adalah daftar opsi yang ada
      CHARACTER SET charset atau DEFAULT
      LAST-INSERT _ ID=angka
      SQL_BIGSELECTS=0 atau 1
      SQL_BIG TABLES=0 atau 1
      SQL-LOG-OFF--0 atau 1
      SQL_SELECT_LIMIT=angka
      SQL-UPDATE LOG=0 atau 1
    SHOW
    SHOW DATABASES [LIKE clausa]
    SHOW KEYS FROM tabel [FROM database]
    SHOW INDEX FROM tabel [FROM database]
    SHOW TABLES [FROM database] [LIKE clausa]
    SHOW COLUMNS FROM tabel [FROM database] [LIKE clausa]
    SHOW FIELDS FROM tabel [FROM database] [LIKE clausa]
    SHOW STATUS
    SHOW TABLE STATUS [FROM database] [LIKE clausa]
    SHOW VARIABLES [LIKE clausa]


    Menampilkan berbagai informasi dari sistem MySQL. Perintah ini bisa digunakan untuk menganalisa status atau struktur dari keseluruhan sistem MySQL UNLOCK
    UNLOCK TABLES

    Membuka penguncian tabel yang dilakukan oleh perintah LOCK UPDATE
    UPDATE tabel SET kolom=nilai.... [WHERE clausa]

    Mengubah isi data dari tabel tanpa mengubah tabel itu sendiri. USE
    USE nama_database

    Memilih dan menggunakan nama_database untuk memulai pekerjaan di sistem MySQL.


    Selengkapnya bisa dilihat di: http://www.mysql.com/documentation/mysql/bychapter/manual_reference.html :: Tipe Data mySQL
    Tipe Ukuran Keterangan
    TINYINT(P)/ INT1(D) 1 Integer with unsigned range 0-255 and with signed range -128-127.
    SMALLINT(P)/ INT2(P) 2 Integer with unsiged range 0-65535 and with signed range -32768-32767.
    MEDIUMINT(P)/
    INT3(P)/
    MIDDLEINT(P) 
    3 Integer with unsigned range of 0-16777215 and signed range of -2147483648-2147483647.
    INT(P)/
    INTEGER(P)/
    INT4(P)
    4 Integer with unsigned range of 0 - 4294967295 and signed range of -2147483648-2147483647.
    BIGINT(P)/ INT8(P) 8 Integer with unsigned range of 0 - 18446744073709551615 and signed range of -9223372036854775808-8223372036854775807.
    FLOAT/FLOAT(4)/ FLOAT(P,D)/ FLOAT4(P,D) 4 A small (single-precision) floating point number. Cannot be unsigned. Allowable values are -3.402823466E+38 to -1.175494351E-38, 0, and 1.175494351E-38 to 3.402823466E+38
    DOUBLEPRECISION
    (P,D)/
    DOUBLE(P,D)/ REAL(P,D)/ FLOAT8(P,D)/ FLOAT(8)
    8 A normal-size (double-precision) floating-point number. Cannot be unsigned. Allowable values are
    -1.7976931348623157E+308 to
    -2.2250738585072014E-308, 0,

    and
    2.2250738585072014E-308 to 1.7976931348623157E+308
    DECIMAL(P,D) P+D An unpacked floating-point number. Cannot be unsigned. Behaves like a CHAR Column
    NUMERIC(P,D) P+D idem DECIMAL
    TIMESTAMP(P) 4 The range is '1970-01-01 00:00:00' to sometime in the year 2037. MySQL displays TIMESTAMP values in YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD, or YYMMDD format
    DATE 3 The supported range is '1000-01-01' to '9999-12-31'. MySQL displays DATE values in 'YYYY-MM-DD' format
    TIME 8 The range is '-838:59:59' to '838:59:59'. MySQL displays TIME values in 'HH:MM:SS' format
    DATETIME 8 A date and time combination. The supported range is '1000- 01-01 00:00:00' to '9999-12-31 23:5 9:59'. MySQL displays DATETIME values in 'YYYY-MM-DD HH:MM:SS' format
    YEAR 1 A year in 2- or 4-digit format (default is 4-digit). The allowable values are 1901 to 2155, 0000 in the 4-digit year format, and 1970-2069 if you use the 2-digit format (70-69). MySQL displays YEAR values in YYYY format
    CHAR(P) P A fixed-length string that is always right-padded with spaces to the specified length when stored. The range is 1 to 255 characters. Trailing spaces are removed when the value is retrieved. CHAR values are sorted and compared in case-insensitive fashion according to the default character set
    VARCHAR(P) L+1,
    L <=P, 1<=P<=255
    A variable-length string. NOTE: Trailing spaces are removed when the value is stored (this differs from the ANSI SQL specification). The range of M is 1 to 255 characters. VARCHAR values are sorted and compared in case-insensitive fashion unless the BINARY keyword is given  
    TINYBLOB
    TINYTEXT
    L+2,
    L < 28
    A BLOB or TEXT column with a maximum length of 255 (28 - 1) characters
    BLOB
    TEXT
    L+2,
    L < 216
    A BLOB or TEXT column with a maximum length of 65535 (216 - 1) characters
    MEDIUMBLOB MEDIUMTEXT L+3,
    L < 224
    A BLOB or TEXT column with a maximum length of 16777215 (224 - 1) characters
    LONGBLOB LONGTEXT L+4,
    L < 232
    A BLOB or TEXT column with a maximum length of 4294967295 (232 - 1) characters
    ENUM(value,value2.... ) 1 or 2 An enumeration. A string object that can have only one value, chosen from the list of values 'value1', 'value2', .. NULL or the special '"' error value. An ENUM can have a maximum of 65535 distinct values
    SET(value, value2,... ) 1-8 A set. A string object that can have zero or more values, each of which must be chosen from the list of values 'value1', 'value2', ... A SET can have a maximum of 64 members
    KETERANGAN:
    P = panjang , D = desimal
    desimal
    Jumlah bilangan desimal yang diperbolehkan untuk dipakai dalam nilai floating point.
    panjang
    Untuk nilai-nilai numerik, satuan ini ditujukan untuk jumlah karakter yang dipakai untuk menampilkan nilainya pada user. Satuan ini mencakup besaran desimal,eksponen, dll.
    Jika digunakan pada tipe TIMESTAMP, maka satuan ini ini menunjukkan format dari waktu yang digunakan dalam sistem MySQL.
    Jika digunakan pada tipe karakter, maka satuan ini menunjukkan jumlah karakter yang ada di dalam data.
    precision
    Atribut ini terdapat di dalam tipe data FLOAT untuk memberikan kompabilitas dengan sistem ODBC.
    AUTO INCREMENT
    Atribut ini memberikan fasilitas agar field numerik bisa diperbarui secara otomatis.
    BINARY
    Atribut ini bisa digunakan dengan tipe CHAR dan VARCHAR untuk memberikan indikasi data binari dalam string text.
    DEFAULT nilai
    Atribut ini memberikan nilai default pada field. Jika argumen default tidak diberikan, maka akan dipakai nilai NULL
    NOT NULL
    Atribut ini menjamin semua masukan ke dalam kolom selalu bernilai non-NULL
    NULL
    Atribut ini memberikan perintah bahwa suatu field bisa diisi masukan yang bernilai NULL
    PRIMARY KEY
    Atribut ini secara otomatis akan membuat field menjadi primary key untuk sebuah tabel. Primary key adalah sebuah key yang UNIQUE dengan nama "PRIMARY". Semua field yang mempunyai primary key harus ad peubah NOT NULL.
     
  • No comments:

    Post a Comment