Agent skill
oracle
Guides Oracle database development including SQL, PL/SQL stored procedures, triggers, EXPLAIN PLAN optimization, AWR analysis, RMAN backup, RAC clustering, and Data Guard. Use when the user needs to write Oracle SQL, create PL/SQL procedures, tune query performance, or manage Oracle database administration.
Install this agent skill to your Project
npx add-skill https://github.com/partme-ai/full-stack-skills/tree/main/skills/database-skills/oracle
SKILL.md
When to use this skill
Use this skill whenever the user wants to:
- Write Oracle SQL or PL/SQL (stored procedures, functions, triggers, packages)
- Design tables, indexes, partitions, or constraints in Oracle
- Tune query performance with EXPLAIN PLAN, AWR, or ASH reports
- Manage Oracle administration (users, roles, tablespaces, RMAN backup)
- Configure RAC, Data Guard, or Oracle replication
How to use this skill
Workflow
- Identify the task - SQL writing, PL/SQL development, performance tuning, or DBA operations
- Write the code - Use the patterns below matching Oracle syntax
- Analyze performance - Run EXPLAIN PLAN or review AWR snapshots
- Apply Oracle-specific best practices - Bind variables, partitioning, RMAN
Quick-Start Example: PL/SQL Procedure with Error Handling
CREATE OR REPLACE PROCEDURE transfer_funds(
p_from_acct IN NUMBER,
p_to_acct IN NUMBER,
p_amount IN NUMBER
) AS
v_balance NUMBER;
BEGIN
-- Check source balance
SELECT balance INTO v_balance
FROM accounts WHERE account_id = p_from_acct
FOR UPDATE;
IF v_balance < p_amount THEN
RAISE_APPLICATION_ERROR(-20001, 'Insufficient funds');
END IF;
UPDATE accounts SET balance = balance - p_amount WHERE account_id = p_from_acct;
UPDATE accounts SET balance = balance + p_amount WHERE account_id = p_to_acct;
COMMIT;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
RAISE;
END transfer_funds;
/
Performance Analysis
EXPLAIN PLAN FOR
SELECT /*+ INDEX(o idx_orders_date) */ * FROM orders o WHERE order_date > SYSDATE - 30;
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
Best Practices
- Use bind variables - Prevent SQL injection and hard parsing; never concatenate user input into SQL
- Partition large tables - Range partition on date columns; hash partition for even distribution
- RMAN backup strategy - Full weekly + incremental daily; test restore procedures quarterly
- Monitor wait events - Use AWR/ASH to identify I/O, latch, or lock contention
- Audit and secure - Use Oracle Audit Vault; grant least-privilege roles; encrypt sensitive columns
Keywords
oracle, PL/SQL, SQL*Plus, SQL Developer, RMAN, RAC, Data Guard, AWR, 关系型数据库, stored procedure, EXPLAIN PLAN, tablespace, 索引, 分区
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
ocrmypdf-batch
OCRmyPDF batch processing skill — process multiple PDFs, Docker automation, shell scripting, and CI/CD integration. Use when the user needs to OCR many PDFs, set up automated OCR pipelines, or integrate OCR into workflows.
ocrmypdf-optimize
OCRmyPDF optimization skill — compress PDFs, configure PDF/A output, JBIG2 encoding, and lossless optimization. Use when the user needs to reduce PDF file size, create archival PDF/A files, or optimize OCR output.
ocrmypdf-image
OCRmyPDF image processing skill — deskew, rotate, clean, despeckle, remove border from scanned documents. Use when the user needs to improve scanned PDF quality, fix skewed pages, remove noise, or clean up scanned documents before OCR.
ocrmypdf-api
OCRmyPDF Python API and plugin skill — use OCRmyPDF programmatically from Python, integrate with applications, and extend with plugins (EasyOCR, PaddleOCR, AppleOCR). Use when the user needs to call OCRmyPDF from Python code, build OCR pipelines, or use alternative OCR engines.
ocrmypdf
OCRmyPDF core skill — add searchable OCR text layer to scanned PDFs, convert images to searchable PDFs, support 100+ languages via Tesseract. Use when the user needs to OCR a PDF, make a scanned PDF searchable, or extract text from scanned documents.
svelte
Guides Svelte and SvelteKit development including reactive components, stores, transitions, lifecycle hooks, SSR, file-based routing, and deployment. Use when the user needs to build Svelte components, create SvelteKit applications, implement reactivity patterns, or configure Svelte with Vite.
Didn't find tool you were looking for?