Anda di halaman 1dari 2

JDBC and SQL

1. Manakah diantara pernyataan tentang JDBC di bawah ini yang benar?


a) JDBC merupakan sebuah API untuk mengkoneksikan data source relational, object, dan XML.
b) JDBC singkatan dari Java DataBase Connectivity.
c) JDBC merupakan sebuah API untuk mengakses relational database, spreadsheet, dan flat file.
d) JDBC merupakan sebuah API untuk menjembatani ketidaksesuaian relational object antara program-program berorientasi object
dan relational database.

2. Package manakah yang memuat class JDBC?


a) java.jdbc dan javax.jdbc
b) java.jdbc dan java.jdbc.sql
c) java.sql dan javax.sql
d) java.rdb dan javax.rdb

3. Tipe driver manakah yang menyediakan akses JDBC melalui satu atau lebih driver ODBC?
a) Driver tipe 1.
b) Driver tipe 2.
c) Driver tipe 3.
d) Driver tipe 4.

4. Tipe driver apakah yang secara langsung mengkonversi perintah JDBC ke dalam protokol jaringan dengan database
management system?
a) Driver tipe 1.
b) Driver tipe 2.
c) Driver tipe 3.
d) Driver tipe 4.

5. Tipe Statement manakah yang dapat mengeksekusi query berparameter?


a) PreparedStatement.
b) ParameterizedStatement.
c) ParameterizedStatement dan CallableStatement.
d) Semua jenis Statements (contohnya yang mengimplementasi sebuah sub interface dari Statement).

6. Bagaimanakah cara mendapatkan informasi dari sebuah ResultSet?


a) Dengan memanggil method get (..., String type) pada ResultSet, dimana variable type merupakan database type.
b) Dengan memanggil method get (..., Type type) pada ResultSet, dimana Type merupakan sebuah object yang mewakili sebuah
database type.
c) Dengan memanggil method getValue(…), dan meng-casting hasilnya menjadi tipe data Java yang diinginkan.
d) Dengan memanggil method getter khusus pada ResultSet: getString (...), get Boolean (...), getClob (...),...

7. Bagaimana cara untuk mengeksekusi statement DML (seperti insert, delete, update ) di dalam database?
a) Dengan menggunakan class InsertStatement, DeleteStatement atau UpdateStatement
b) Dengan memanggil method execute(…) atau executeUpdate(…) dari sebuah object Statement atau object sub-interface yang ada.
c) Dengan memanggil method executeInsert(...), executeDelete(...) atau executeUpdate(...) dari object DataModificationStatement
d) Dengan menggunakan statement execute(…) dari object DataModificationStatement

8. Bagaimana anda dapat mengetahui, di dalam program Java, SQL warning telah dihasilkan, sebagai keluaran dari proses
executing sebuah statament SQL di dalam database?
a) Anda harus menangani (catch) checked SQLException yang dihasilkan oleh method yang mengeksekusi statement tersebut.
b) Anda harus menangani (catch) unchecked SQLWarningException yang dihasilkan oleh method yang mengeksekusi statement
tersebut.
c) Anda harus memanggil method getWarnings() pada object Statement (atau sebuah sub interface yang ada)
d) Anda harus melakukan query terhadap object ResultSet, tentang warning yang mungkin dihasilkan oleh database

9. Berkaitan dengan JDBC, apakah yang dimaksud dengan DataSource?


a) Sebuah DataSource merupakan basic service untuk mengatur sekumpulan driver JDBC.
b) Sebuah DataSource merupakan representasi Java terhadap sebuah physical data source.
c) Sebuah DataSource merupakan sebuah registry point bagi JNDI-services.
d) Sebuah DataSource merupakan sebuah kumpulan koneksi ke physical data source.

10. Apakah arti dari ResultSet.TYPE_SCROLL_INSENSITIVE


a) ResultSet tidak sensitive terhadap scrolling
b) ResultSet sensitive terhadap scrolling, tetapi tidak sensitive terhadap update, misalnya not updatable
c) ResultSet sensitive terhadap scrolling, tetapi tidak sensitive terhadap perubahan yang dibuat oleh yang lain.
d) Tergantung pada tipe dari data source, serta tipe dan versi dari driver yang anda gunakan bersama data source tersebut.

11. Apakah ResultSets bersifat updateable?


a) Ya, tetapi hanya jika anda memanggil method openCursor() pada ResultSet dan jika driver dan database mendukung opsi
tersebut.
b) Ya, tetapi hanya jika anda mengindikasikan sebuah concurrency strategy ketika mengeksekusi statement, dan jika driver dan
database mendukung opsi tersebut.
c) Ya, tetapi hanya jika ResultSet merupakan sebuah object dari class UpdateableResultSet dan jika driver dan database mendukung
opsi tersebut.
d) Tidak, ResultSet tidak pernah bersifat updateable. Secara explisit, anda harus mengeksekusi statement DML (insert, delete dan
update) untuk mengubah data di dalam database bersangkutan.

12. Manakah pernyataan yang benar tentang transaksi JDBC?


a) Sebuah transaksi merupakan sekumpulan statement yang berhasil dieksekusi di dalam database.
b) Sebuah transaksi selesai ketika commit() atau rollback() dipanggil pada object Connection.
c) Sebuah transaksi selesai ketika commit() atau rollback() dipanggil pada object Transaction.
d) Sebuah transaksi selesai ketika close() dipanggil pada object Connection.

13. Bagaimana cara memulai transaksi database di dalam database?


a) Dengan memanggil sebuah object Transaction ke Connection dan memanggil method begin() di dalamnya.
b) Dengan memanggil sebuah object Transaction ke Connection dan mengatur property autoCommit dari Transaction dengan property
false
c) Dengan memanggil method beginTransaction() pada object Connection.
d) Dengan mengatur property autoCommit dari Connection menjadi ‘false’ dan mengeksekusi sebuah statement dalam database

14. Apakah maksud dari level transaksi isolasi TRANSACTION_REPEATABLE_READ


a) Pembacaan yang buruk, pembacaan non-repeatable dan pembacaan phantom dapat terjadi.
b) Pembacaan yang buruk dicegah; pembacaan non-repeatable dan pembacaan phantom dapat terjadi.
c) Pembacaan yang buruk dan pembacaan non-repeatable dicegah; pembacaan phantom dapat terjadi.
d) Pembacaan yang buruk, pembacaan non-repeatabledan pembacaan phantom reads dicegah.

15. Manakah pernyataan yang benar mengenai update posisi (misal : update cursor) di dalam ResultSet?
a) Menggunakan teknik cursor merupakan satu-satunya cara yang mungkin untuk mengubah data pada baris (current row)
dari ResultSet.
b) Statement insert tidak mendukung jika menggunakan cursor
c) Hanya ResultSet yang bersifat scrollable dan updatable yang dapat menggunakannya untuk mengubah data dalam baris ResultSet.
d) Nama cursor ditentukan oleh method setCursorName(String name) dari object Statement.

16. Bagaimana cara mengeksekusi sebuah stored procedure di dalam database?


a) Memanggil method execute() pada object CallableStatement
b) Memanggil method executeProcedure() pada object Statement
c) Memanggil method execute pada sebuah object StoredProcedure
d) Memanggil method run() pada sebuah object ProcedureCommand

17. Apa yang terjadi jika method close() dipanggil pada sebuah object ResultSet?
a) method close() tidak ada untuk sebuah ResultSet. Hanya Connections yang dapat ditutup.
b) Resource database dan JDBC dapat dilepas.
c) akan terjadi sebuah SQLException, karena hanya object Statement yang dapat menutup ResultSet
d) ResultSet, bersamaan dengan Statement yang membuatnya dan Connection dari Statement dimana Statement tersebut diperoleh,
akan ditutup dan melepas semua resource database dan JDBC

18. Apa yang terjadi jika dipanggil deleteRow() pada sebuah object ResultSet?
a) Baris yang dipilih dihapus hanya dari ResultSet, bukan dari database.
b) baris yang dipilih dihapus dari ResultSet dan database.
c) Hasil tergantung pada apakah property synchonizeWithDataSource di-set true atau false
d) Akan terjadi error compile : the method does not exist because you can not delete rows from a ResultSet.

19. Manakah pernyataan yang benar mengenai batched insert dan update?
a) Untuk membuat sebuah tumpukan (batch) dari statement insert dan update, harus dibuat sebuah object bertipe Batch, dan
memanggil method addStatement(String statement) untuk setiap statement yang ingin dieksekusi dalam batch
b) Batch insert dan update hanya dimungkinkan, ketika digunakannya query berparameter
c) Untuk melakukan batched update/insert, dipanggil addBatch(String statament) pada object Statement untuk setiap statement yang
akan dieksekusi dalam batch.
d) Untuk mengeksekusi sebuah batched update/insert, dipanggil method executeBatch() pada sebuah object Statement.

20. Manakah yang benar tentang statement DDL (create, grant,dll)?


a) Statement DDL disediakan sebagai statement sql normal dan dieksekusi dengan memanggil method execute() pada sebuah
object Statement (atau sebuah sub interface yang ada)
b) Untuk mengeksekusi statement DDL, maka harus diinstall file pendukung lainnya.
c) Statement DDL tidak dapat dieksekusi dengan menggunakan JDBC, harus digunakan tool database khusus untuk melakukannya.
d) Dukungan untuk statement DDL akan menjadi fitur baru pada JDBC pada rilis berikutnya.

Anda mungkin juga menyukai