Leadership in the IT field starts with proof of skill, and the Oracle Database: Advanced PL/SQL exam is that proof. In 2026, TestPassed prepares 1z1-148 candidates with 108 practice questions edited by experts who know the real test firsthand.
Oracle 1z1-148 Exam Overview:
| Certification Vendor: | Oracle |
|---|---|
| Exam Name: | Oracle Database: Advanced PL/SQL |
| Exam Number: | 1Z0-148 |
| Available Languages: | English (US) |
| Certificate Validity Period: | No expiration |
| Related Certifications: | Oracle Database: Program with PL/SQL (1Z0-149) Oracle Database SQL Certified Associate Oracle Database PL/SQL Developer Certified Professional |
| Exam Format: | Multiple Choice, Multiple Select |
| Exam Price: | USD 245 |
| Real Exam Qty: | 75-85 |
| Passing Score: | 62% |
| Exam Duration: | 120 minutes |
| Recommended Training: | Oracle Database: Advanced PL/SQL Training |
| Exam Registration: | Pearson VUE Registration Oracle Education |
| Sample Questions: | ![]() |
| Exam Way: | Computer-based testing at Pearson VUE centers; online proctored option available |
| Pre Condition: | Recommended: Pass 1Z0-071 (Oracle Database SQL) or 1Z0-144 / 1Z0-149 (Program with PL/SQL); strong PL/SQL experience |
| Official Syllabus URL: | https://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=5001&get_params=p_exam_id:1Z0-148 |
Oracle 1z1-148 Exam Syllabus Topics:
| Section | Weight | Objectives |
|---|---|---|
| Error Handling and Dynamic SQL | 12% | - DBMS_SQL package usage - Advanced exception handling - Native Dynamic SQL |
| Security and Code Robustness | 13% | - Fine-Grained Access Control (VPD) - Definer's vs Invoker's Rights - Using DBMS_ASSERT - Preventing SQL injection |
| Large Objects (LOBs) Management | 12% | - Using DBMS_LOB package - SecureFile and BasicFile LOBs - Internal vs External LOBs - Temporary LOB operations |
| PL/SQL Performance and Result Caching | 15% | - Function result caching - Native vs interpreted compilation - DBMS_RESULT_CACHE configuration - Intraunit inlining - DBMS_PARALLEL_EXECUTE |
| Advanced Interface and External Routines | 12% | - Calling external C procedures - Using database links and dynamic SQL - Calling Java from PL/SQL |
| Profiling, Tracing and Debugging | 11% | - Profiling performance with DBMS_PROFILER - Analyzing execution statistics - Tracing execution with DBMS_TRACE |
| Working with Collections | 13% | - Bulk operations and FORALL/BULK COLLECT - Associative arrays, nested tables, VARRAYs - Collection methods and best practices |
| Managing PL/SQL Code and Dependencies | 12% | - Conditional compilation - Using PL/SQL compiler settings and warnings - DBMS_METADATA package usage - Using PL/Scope and dictionary views - Managing dependencies and invalidations |
Everything About Oracle Database: Advanced PL/SQL, Asked and Answered
Oracle Database: Advanced PL/SQL is an official Oracle certification exam, listed under the code 1z1-148. Passing it earns you the Oracle Advanced PL/SQL Developer Certified Professional certification, positioned at the Professional level. It also connects to Oracle Database PL/SQL Developer Certified Professional, Oracle Database SQL Certified Associate, Oracle Database: Program with PL/SQL (1Z0-149). For anyone aiming at a leadership track in IT, this credential is one of the clearest markers of verified skill.
Passing Oracle Database: Advanced PL/SQL takes 62%, and the official registration fee is USD 245. Retakes charge the full USD 245 again, which is why accuracy in preparation matters more than volume. Validate your readiness with repeated TestPassed practice scores above the requirement before committing to a date.
The Oracle Database: Advanced PL/SQL exam contains 75-85 questions to answer within 120 minutes. The SOFT engine from TestPassed imitates the real test scene on your computer and uses special methods to help you master questions and answers, so the official time limit becomes a practiced routine rather than a surprise.
Recommended: Pass 1Z0-071 (Oracle Database SQL) or 1Z0-144 / 1Z0-149 (Program with PL/SQL); strong PL/SQL experience
Vendor requirements are revised periodically, so confirm the current conditions before registering via the official exam page.
Sign-up for Oracle Database: Advanced PL/SQL goes through the official channels below.
One planning note: the exam is delivered Computer-based testing at Pearson VUE centers; online proctored option available.
Oracle recommends the following training for Oracle Database: Advanced PL/SQL candidates.
Reinforce whichever training you pick with the 108 practice questions in the TestPassed 1z1-148 package, edited by experts who follow real test changes firsthand.
Three versions share the same verified content: the PDF prints unlimited copies for paper study, the SOFT engine imitates the real test scene on Windows PCs, and the APP version runs on all electronic products, which is why the majority of examinees choose it. A free demo lets you try before deciding, and after purchase updates are free for 365 days, extendable afterward at a 50% discount.
Worry-free shopping means a 100% money-back guarantee with stated conditions. Take the Oracle Database: Advanced PL/SQL exam within 60 days of purchase; if you fail, you may claim a full refund, provided the exam matches your product. Attempts within 3 days of purchase are ineligible, as are downloaded-but-unused products, free materials, and expired orders; the candidate name must match the payer name. Submit a scanned enrollment slip and the official Score Report PDF within 2 days of the exam, and claims are processed within 7 days. Alternatively, exchange for two other exam products of equal value, free, keeping the update service on your original purchase.
Delivery is immediate: files unlock for download at payment and are emailed to you within one minute. If nothing arrives within 2 hours, check spam and contact our 7/24 customer attendants, who reply within two hours. Installation is unlimited, and credit card payment keeps your money safe.
Oracle Database: Advanced PL/SQL is structured into 8 official domains. The leading ones are Working with Collections (13%), Large Objects (LOBs) Management (12%), and Error Handling and Dynamic SQL (12%). The full topic breakdown appears above; accurate preparation starts with an accurate map.
Oracle Database: Advanced PL/SQL Sample Questions:
Which two can be used to find details of parameters for overloaded PL/SQL routines?
- A. ALL_DESCRIBE
- B. ALL-DEPENDENCIES
- C. ALL_PROCEDURES
- D. ALL_SOURCE
- E. ALL_ARGUMENTS
Correct Answer: D,E 🗳️
Which is the correct method for releasing unused money after deleting elements of a collection?
- A. Flush the shared pool using the ALTER SYSTEM command.
- B. Execute DBMS_SHARED_POOL.UNKEEP.
- C. Use the TRUNCATE method on the collection.
- D. Execute DBMS_SESSION.FREE_UNUSED_USER_MEMORY.
Correct Answer: D 🗳️
Which two statements are true regarding edition-based redefinition (EBR)?
- A. There is no default edition defined in the database.
- B. EBR does not let you upgrade the database components of an application while in use.
- C. When you change an editioned object, all of its dependents remain valid.
- D. Editions are non-schema objects.
- E. Tables are not editionable objects.
- F. You never use EBR to copy the database objects and redefine the copied objects in isolation.
Correct Answer: C,E 🗳️
Which statement is true about internal and external LOBs?
- A. An external LOB can be loaded into an internal LOB variable using the DBMS_LOB package.
- B. When using DBMS_LOB.INSTR for internal and external LOBs, DBMS_LOB.OPEN should be called for each LOB.
- C. After an exception transfers program control outside a PL/SQL block, all references to open external LOBs are lost.
- D. Internal and external LOBs can be written using DBMS_LOB.
- E. A NOEXIST_DIRECTORY exception can be raised when using internal and external LOBs.
Correct Answer: B,C 🗳️
Examine this function body:
Which two headers will allow this function to compile successfully and take advantage of both invoker's rights and function result caching?
- A. CREATE FUNCTION get_hire_date (emp_id NUMBER) RETURN VARCHAR2AUTHID
DEFINERISdate_hired DATE; - B. CREATE FUNCTION get_hire_date (emp_id NUMBER) RETURN
VARCHAR2RESULT_CACHEAUTHID DEFINERISdate_hired DATE; - C. CREATE FUNCTION get_hire_date (emp_id NUMBER) RETURN
VARCHAR2RESULT_CACHEAUTHID CURRENT_USERISdate_hired DATE; - D. CREATE FUNCTION get_hire_date (emp_id NUMBER) RETURN VARCHAR2RESULT_CACHE RELIES_ON (departments)AUTHID CURRENT_USERISdate_hired DATE;
- E. CREATE FUNCTION get_hire_date (emp_id NUMBER) RETURN VARCHAR2RESULT_CACHE RELIES_ON (employees)AUTHID CURRENT_USERISdate_hired DATE;
Correct Answer: C,E 🗳️



