• Banyak alasan untuk percaya masa depan akan lebih baik. Fight!

    Pengertian VIEW pada Database Management System (DBMS)


    Salah satu keuntungan dari model relasional adalah model tersebut memberikan independensi data sepenuhnya secara logikal. Skema external akan mengijinkan user untuk memiliki view ter tentu dari database.

    Dalam sistem relasional, sebuah view adalah sebuah relasi virtual.

    Definisi view adalah hasil (result) dari sebuah Query terhadap relasi- relasi dasar (atau relasi real). Hasil (view) ini tidak disimpan dalam database seperti relasi dasar. Sebuah view adalah sebuah jendela dinamik, dalam artian bahwa ia mencerminkan semua update yang dilakukan terhadap database. Disamping pemakaiannya di dalam skema external, view juga berguna untuk menjamin data- security dengan cara yang sederhana. Dengan memilih subset dari database, view dapat menyembunyikan beberapa data.

    Jika user mengakses database melalui view, mereka tak dapat melihat atau memanipulasi hidden-data, dengan demikian data akan menjadi secure.

    Perhatikan bahwa, dalam sistem DBMS terdistribusi, sebuah view dapat diturunkan dari relasi- relasi terdistribusi. Akses ke sebuah view akan memer lukan eksekusi dari kueri terdistribusi yang berhubungan dengan definisi view ter sebut.

    Isu penting dalam DBMS terdistribusi adalah untuk membuat materialisasi view dengan cara yang efisien. Kita akan melihat bagaimana konsep snapshot akan membantu dalam memecahkan masalah ini, tapi ter lebih dulu kita akan berkonsentrasi pada DBMS terpusat.

    Konteks view dalam DBMS terpusat, sebuah view adalah sebuah relasi yang diturunkan dari relasi relasi dasar , sebagai hasil dari sebuah kueri relasional.



    Contoh penggunaan view dalam SQL :



    set pagesize 500
    alter session set nls_date_format = 'DD.MM.YYYY';

    create table prices_ (
    sku varchar2(38),
    price number,
    valid_from date
    );

    insert into prices_ values ('4711', 18, '08.01.2003');
    insert into prices_ values ('4711', 19, '01.05.2000');
    insert into prices_ values ('4711', 20, '18.01.2001');
    insert into prices_ values ('4711', 21, '09.01.2000');

    insert into prices_ values ('beer', 14, '07.03.2000');
    insert into prices_ values ('beer', 15, '10.01.2003');
    insert into prices_ values ('beer', 16, '18.01.2001');
    insert into prices_ values ('beer', 19, '16.11.2001');
    insert into prices_ values ('beer', 17, '19.02.2002');


    create view prices_today_ as
    select
    sku,
    price,
    valid_from
    from
    (select
    sku,
    price,
    valid_from,
    rank() over (partition by sku order by valid_from desc) r
    from
    prices_
    )
    where r=1;


    select * from prices_today_;

    drop table prices_;
    drop view prices_today_;


    5 comments:

    1. i have problem with my shoutbox temporary

      ReplyDelete
    2. berkunjung balik di saat mlm hari :)

      ReplyDelete
    3. saya masih nggak ngerti mengenai view... tp thanks anyway.

      ReplyDelete
    4. menggunakan view lebih cepat eksekusinya

      ReplyDelete
    5. apakah dengan ada nya view ini, tidak terjadi log pada table jika congcurrent user melimpah...?

      ReplyDelete

    Salam blogger...

     

    Blog Status

    Free Hit Counter
    HTML Counter
    free counters

    Followers