PRAKTIKUM SISTEM BASIS DATA TUGAS 1 MANGROVE PERCETAKAN Penyusun : Nama : Edi Sastrawijoyo NIM : 12131242 Prodi : Teknik Informatika SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN ILMU KOMPUTER ELRAHMA YOGYAKARTA 2014
Table Karyawan NO KOLOM TYPE KETERANGAN 1 Id_kary Smallint (2) Untuk menyimpan identitas unik user, alasan menggunakan type data smallint dikarenakan jumlah pengguna kurang dari 100 2 Nm_kary Char (50) Untuk menyimpan data user, dengan menggunakan type char karena bisa karakter string dan atau numeric. 3 Almt_kary Char (100) Untuk menyimpan data user, dengan menggunakan type cahr karena bisa karakter string dan atau numeric. 4 No_hp Bigint(13) Untuk menyimpan data user, dengan menggunakan type bigint digunakan untuk menyimpan data bilangan bulat positif dan negative 1. Membuat data base 2. Membuat tabel
3. Mengisikan data 4. Update dan delete data Update
Delete 5. Perintah query untuk mengetahui type tabel 6. Perbedaan antara truncate dan delete 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. OK, sekarang pilihan tinggal di tangan Anda. Singkatnya sebagai berikut! Truncate 1. Truncate dimasukkan dalam kelompok kategory DDL (Data Definition Language) merupakan bahasa dalam basis data yang digunakan untuk membuat dan mendefinisikan objek-objek di dalam database. Yang termasuk di dalam DDL antara lain : Create,Drop,Alter,Select,pembuatan index,trigger,function,store Procedure. 2. Truncate mengakibatkan auto commit. 3. Truncate akan menghapus seluruh record dari sebuah table tanpa menggunakan kondisi WHERE 4. Truncate lebih cepat dalam memproses dan menggunakan lebih sedikit sumber daya komputer termasuk log transaksi
5. Truncate hanya akan menghapus record saha,tapi struktur tabel termasuk kolom,constrain,index tidak dihapus. 6. Truncate tidak dapat di RollBack. 7. Truncate tidak dapat mengaktifkan Trigger. 8. Truncate akan melakukan reset Identity pada sebuah tabel. Delete 1. Delete dimasukkan dalam kategori DML (Data manipulation Language) merupakan merupakan bahasa dalam basis data yang digunakan untuk melakukan modifikasi dan pengambilan data pada suatu basis data. Modifikasi data antara lain : insert,update,delete,replace,update. 2. Delete dapat di RollBack. 3. Delete akan menghapus record berdasarkan kondisi menggunakan WHERE. 4. Delete lebih lambat dalam memproses data dan menggunakan lebih banyak sumber daya komputer termasuk log transaksi. 5. Delete dapat mengaktifkan Trigger. 6. Delete dapat digunakan pada tabel yang menjadi referensi Foreign Key. 7. Delete tidak dapat melakukan Reset Identity pada sebuah tabel Referensi sql-server-performance.com