thursday'snotes
this site the web

Lesson #7 Modifying Data in Table

Terdapat 4 operasi saat ingin memodifikasi data dalam  table:

  1. INSERT
  2. DELETE
  3. UPDATE
  4. Overview Transaction
INSERT:
 Statement Insert dapat digunakan bersama-sama dengan SELECT (dengan menambahkan kata INTO setelah kata INSERT ), EXCUTE, dan TOP  (dengan menambahkan kata INTO setelah kata TOP dan sertai dengan statement SELECT)

INSERT dan OUTPUT clause
Penggunaan OUTPUT dalam sebuah INSERT statement  akan mengembalikan informasi dari setiap baris yang  berubah akibat INSERT statement

DELETE
Statement Delete dapat digunakan bersama WHERE clause, Subquery, TOP

TRUNCATE TABLE
Menghapus seluruh baris dari table harus melakukan penghapusan secara individual . Truncate Table tidak dapat digunakan pada table yang direferensikan oleh Foreign Key, berpartipasi dalam indexed view, dipublikasikan menggunakan transactional replication atau merge replication. Jika tidak dapat di hapus menggunakan truncate gunakanlah DELETE statement.

Truncate memiliki kelebihan dibandingkan DELETE yaitu:

  1. Menggunakan transaction log lebih sedikit
  2. Tak ada yang tersisa di table
DELETE and the OUTPUT clause
Penggunaan OUTPUT dalam sebuah DELETE statement akan menghapus baris dari sebuah table dan mengembalikan nilai yang di hapus ke sebuah result set.

UPDATE
Statement UPDATE terdiri dari 2 clause utama :
  1. SET : termasuk didalamnya list kolom yang dipisahkan menggunakan tanda koma
  2. FROM : mengidentifikasi table atau view yang mengisi value untu ekspresi pada SET clause
UPDATE and the OUTPUT clause
Penggunaan OUTPUT dalam sebuah UPDATE statement akan mengupdate baris dari sebuah table dan mengembalikan nilai yang di hapus ke sebuah result set.

TRANSACTION
adalah urutan operasi yang dtunjukan sebagai single logical unit of work. Terdiri:
  1. Atomic : merupakan atomic unit of work
  2. Consistency : harus meninggalkan semua dalam  consistent state
  3. Isolation : harus terisolasi dari modifikasi yang dibuat dari concurrent transaction lainnya
  4. Durability : Tahan setelah kegagalan sistem
Macam - macam Basic Transaction Statement :
  1. BEGIN TRANSACTION
  2. COMMIT TRANSACTION
  3. ROLLBACK TRANSACTION
BEGIN TRANSACTION 
Menampilkan titik dimana data direferensikan oleh sebuah koneksi yang konsisten secara logikal dah fisikal> Jika terjadi error maka semua modifikasi data yang dibuat setelah BEGIN TRANSACTION dapat di rool back untuk mengembalikan data ke state consitency yang diketahui

COMMIT TRANSACTION
diterbitkan untuk membuat modifikasi menjadi permanent di database 

ROLLBACK TRANSACTION
menghapus seluruh modifikasi jika mengalami error saat modifikasi


TRANSACTION ISOLATION Level Control
Mengunci pengambilan data ketika data sedang di read, seberapa lama read locks ,bagaimana read operation mereferensikan rows acts


  1. READ UNCOMMITED : Statement dapat membaca row yang telah dimodifikasi oleh transaksi lain namun belum di-COMMIT
  2. READ COMMITED : Statement tidak dapat membaca data karena modifikasi belum di-COMMIT
  3. REPEATABLE READ : Statetment tidak dapat membaca data karena belum di-COMMIT oleh transaction lain dan tidak ada transaction yang dapat memodifikasi data yang telah dibaca oleh current transaction sampai current transaction selesai
  4. SNAPSHOT : Data dibaca oleh statement dalam sebuah transaksi yang akan menjadi trasactionally consistent version dari data yang telah ada  diawal transaction
  5. SERIALIZABLE : mengunci semua table dalam seluruh select statement dalam sebuah transaction

0 comments:

Post a Comment

 

Disclaimer

I do not claim any of these images as my own unless otherwise stated

The views and opinions expressed on this blog are 100% mine. If I claim or appear to be an expert on a certain topic or product or service area, I will only endorse products or services that I believe, based on my expertise, are worthy of such endorsement. Any product claim, statistic, quote or other representation about a product or service should be verified with the manufacturer or provide

About Thursday's Notes

This blog is a personal blog written and edited by me, and does not reflect the views of either employers and/or clients. This blog does not accept any form of cash advertising, sponsorship, or paid topic insertions.