Mata Kuliah : Pemograman Basis Data II (PBD II)
Dosen : Titik Lusiani, M.Kom
Blog : blog.stikom.edu/lusiani
Dosen : Titik Lusiani, M.Kom
Blog : blog.stikom.edu/lusiani
Resume
Pertemuan 1-7
Pengertian Oracle Developer
yaitu software developer untuk
menggunakan oracle.
Perbedaan PL/SQL dan SQL :
PL/SQL
: - lebih
mengarah ke oracle formnya
-
didalamnya perintah SQL digunakanuntuk
memanipulasi data
- didalam block structure terdapat declare,
begin dan end
SQL : -
digunakan untuk memanipulasi data dengan select, from, where kedalam
database
SQL Cursor yaitu menampilkan
data secara indeks/himpunan.
SQL Cursor attributes :
§ SQL%ROWCOUNT < menghitung baris >
§ SQL%FOUND < menghitung data >
§ SQL%NOTFOUND < mencari data yang tidak ada >
§ SQL%ISOPEN < database dibuka >
Practice 2
1. C.
Add a local subprogram containing the algorithm
Alasan :
Menambahkan subprogram yang ada di program, karena didalam prosedur ada prosedure
lagi
Alasan :
Jika menggunakan
subprogram, kode hanya
dijalankan dalam prosedur.Apabila
kode dieksekusi dari luar
prosedur, maka subprogram harus ditulis sebagai prosedur packged atau berdiri
sendiri/terpisah.
Alasan :
Karena menggunakan method arbitary order
Alasan :
Prosedur ini biasanya dibuat untuk melakukan suatu tindakan tanpa
menghasilkan suatu nilai
Alasan :
Karena setiap create pasti jawabannya yang sukses
adalah execute. Dan simbol yang dipakai yaitu “=>” bukan “:=”
6.
C. EXECUTE
find_seats_sold (34);
Alasan :
Karena untuk mengeksekusi
prosedure dalam SQL * Plus memerlukan perintah
EXECUTE
7. D. Executing the stored function within a CHECK constraint of a table
Alasan :
Karena fungsi tidak dapat
dipanggil dalam keadaan
CHECK, tapi
dapat digunakan dalam keadaan fungsi SELECT,
INSERT, UPDATE, dan
DELETE
EXECUTE :g_yearly_budget := GET_BUDGET(11);
Alasan :
perintah
EXECUTE dan INSERT
VARIABLE
g_yearly_budget NUMBER
EXECUTE:g_yearly_budget
:= GET_BUDGET(11); àeksekusi(:g_yearly_budget pada form)
diisi dalamGET_BUDGET yang bernilai 11
9. A. SELECT id, name, get_budget(id,200) FROM studio; Alasan:
Karena menggunakan EXECUTE dan
INSERT
10. B. passing values to the function
Alasan :
mengirimkan nilai ke fungsi
11. A. Issue the SHOW ERRORS command.
Alasan :
Menggunakan perintah
show error untuk mengecek
12. C.
Add "RETURN
BOOLEAN" immediately before the IS keyword.
alasan :
Karena didalam
sintaknya terdapat fungsi boolean
13. A.Network traffic is decreased by bundling commands.
Alasan :
Network traffic is decreased by bundling
commands
14. D. DECLARE v_updated_flag BOOLEAN;
BEGIN
v_updated_flag
:= set_budget(11,500000000);
END;
Alasan
:
DECLARE
v_updated_flag BOOLEAN;
BEGIN
v_updated_flag
:= set_budget(11,500000000);
END;
15. Which two subprogram headers are correct? (Choose
two.)
B. CREATE OR REPLACE PROCEDURE get_sal (v_sal IN number) IS
D. CREATE OR REPLACE FUNCTION calc_comm (p_amnt IN
number) RETURN number
Alasan:
- CREATE
OR REPLACE PROCEDURE get_sal (v_sal IN number) IS
- CREATE
OR REPLACE FUNCTION calc_comm (p_amnt IN number) RETURN number
16. B. function can be used in a SQL
statement.
Alasan :
Karena
function dapat digunakan dalam SQL
- C. DROP FUNCTION get_budget;
Alasan :
Perintah DROP SQL digunakan untuk menghapus objek dari
database.
- D. CREATE OR REPLACE FUNCTION calc_comm (v_emp_id IN NUMBER) RETURN number IS
v_total NUMBER;
BEGIN
SELECT SUM(ord.total) INTO v_total
FROM ord,customer
WHERE ord.custid = customer.custid
AND customer.repid = v_emp_id;
RETURN (v_total * .20);
END;
Alasan :
karena Create Or Replace adalah jawaban paling benar , return
number IS
19. A. SELECT id, name, get_budget(id,200) FROM studio;
Alasan :
Perintah diatas adalah
query yang dapat dijalankan dengan SQL*Plus.
- D. executing the stored function within the DEFAULT clause of the CREATE TABLE
Alasan :
Karena CREATE TABLE default
memang tidak ada
- D. SELECT * FROM ord GROUP BY ordid HAVING calc_comm(total) > 5000;
Alasan :
Kalau jawaban B menjurus
ke tabel
- A. by limiting changes to logic to one location
Alasan :
Menyederhanakan fungsi adalah dengan memberikan parameter.
- A. A function must return a value.
D. A function can be invoked from within a PL/SQL
expression.
Alasan :
Fungsi merupakan suatu blok PL/SQL yang
mengembalikan nilai. Fungsi dapat juga di invoke dengan menggunakan SQL*Plus.
24. B. It must not modify the database.
Alasan :
Hanya menampilkan saja
25. D. Add "(v_studio_id IN NUMBER)" right before
the RETURN statement of the header.
Alasan : Karena sebelum return diberikn
variabel
26. A. Function
Alasan
:
27. D. RETURN v_yearly_budget;
Alasan :
v_yearly_budget telah dideklarasikan pada query diatas maka
RETURN v_yearly_budget dapat mengexecute function diatas.
- A. public
Alasan :
Semua yg dideklarasikan pada package spesifikasi adalah
public, maka jika akan membuat variable, konstanta, prosedur, fungsi, dan
lainnya sebagai public maka deklarasikan pada package spasification.
29. A. This package specification can exist without a body.
Alasan :
Sebuah Blok
PL / SQL terdiri dari tiga bagian.Bagian Deklarasi (opsional). Bagian Eksekusi
(wajib). Eksepsi (atau Kesalahan) Penanganan bagian (opsional).
30. A. They are public procedures.
Alasan :
Blok Procedure merupakan suatu blok PL/SQL yang
menyimpan sekumpulan perintah yang tidak disertai dengan pengembalian nilai.
Practice 1
1. A. USER_SOURCE
Alasan : karena user_source adalah suatu object yang
digunakan untuk melihat isi atau source code dari sebuah procedure atau
function
2. D. procedures, functions, and packages
Alasan :
3. D. USER_DEPENDENCIES
Alasan : karena
dapat digunakan ketika ada salah satu user telah dijalankan
4. C. USER_DEPENDENCIES
Alasan : karena
dapat digunakan ketika ada salah atu user dijalankan
5. C. USER_OBJECTS
Alasan :
karena berguna untuk melihat status dari sebuah procedure, apakah valid/tidak.
6. A. SELECT text FROM user_source WHERE name = 'THEATER_PCK';
Alasan : karena syntax tersebut dapat digunakan untuk
melihat isi dari sebuah procedure
7. C. USER_OBJECTS
Alasan : user_objects
dapat digunakan untuk melihat status dari suatu procedure, apakah valid atau
tidak.
8. C. USER_OBJECTS
Alasan :
karena user_objects selain dapat digunakan untuk melihat status dari dari
sebuah procedure. User_objects juga dapat digunakan untuk melihat kapan
terakhir sebuah procedure dibuat atau dimodifikasi
9. C, E
REVOKE UPDATE ON employee FROM hr_emp;
GRANT EXECUTE ON update_employee TO hr_emp;
Alasan :
agar hr_emp dapat melakukan update tabel employee.
10. C. A user needs only the privilege to execute the procedure
and does not need privileges on the underlying tables.
Alasan : karena user perlu diberi hak akses sesuai
dengan privileges yg diberika kepada user tersebut.
11. A. GRANT EXECUTE ON update_theater TO jsmith;
Alasan :
Memberikan hak akses kepada jsmith agar user jsmith bis melakukan
update_theater
12. D. Only the database administrator can recover this procedure
using backups.
Alasan : karena hanya administrator yang bisa
menggunakan atau me-recover prosedure yang telah terhapus yaitu menggunakan
backup
13. D. Declare a new exception and associate it with error code
-2292. Create an exception section, and add code to handle this non-predefined
exception that you just declared.
Alasan :
14. D. Use (v_total IN sales_order.total%TYPE DEFAULT 0) as the
parameter definition.
Alasan :
15. C. Add (v_name IN VARCHAR2) immediately before the IS
keyword.
Alasan :
16. D. CREATE OR REPLACE PROCEDURE
Alasan :
karena bisa mengubah atau mengganti apabila data tersebut error atau sudah
pernah dibuat. Dan perintah ini sudah struktur yang benar dalam membuat sebuah
prosedure
17. A. IN
Alasan : variabel
tersebut bertipe number
18. D. Formal arguments allow you to transfer values to and from
the calling environment.
Alasan :
19. A. The statement compiles, and the procedure is created.
Alasan :
karena struktur penulisan prosedure sudah benar. Sudah ada IN dan juga ada
variabelnya.
20. D. When an exception is raised in a called procedure, control
goes to the exception section of that block.
Alasan :
21. D. IN OUT parameters cannot be initialized with a default
value.
Alasan :
22. E. The declaration of V_COST_PER_TICKET cannot have a DEFAULT
value.
Alasan :
23. B. An IN OUT formal parameter does not require a value before
returning to the calling environment.
Alasan :
24. C. EXECUTE find_seats_sold (v_theater_id => 500);
Alasan :
25. C. source code and compilation errors
Alasan :
26. A. Declare V_SEATS_SOLD as an OUT argument.
Alasan :
27. A. Only data type is required.
Alasan :
28. D. IN OUT
Ket : karena
dapat digunakan untuk memasukkan nilai dan mengeluarkan nilai.
29. C. DROP PROCEDURE calc_comm;
Ket : karena
drop
30. A, B, C
- The ADD_THEATER procedure is written in SQL.
- The ADD_THEATER procedure can be shared by multiple programs.
- The ADD_THEATER procedure will be stored in the database as a
schema object.
Tidak ada komentar:
Posting Komentar