Quick Start¶
The site version of GETTING_STARTED.md — the repository file remains the source of truth.
0. Start CUBRID (all paths)¶
Readiness takes up to a minute on first start:
1. Five-minute first query (pycubrid)¶
The expected output is checked by CI on CUBRID 11.2 and 11.4 — compare against fundamentals/pycubrid/expected/01_connect.expected. From here, fundamentals/ walks through CRUD, transactions, parameterized queries, collections, LOBs, and window functions.
2. ORM and application templates (sqlalchemy-cubrid)¶
pip install sqlalchemy-cubrid # pulls SQLAlchemy 2.x
python fundamentals/sqlalchemy/01_connect_and_session.py
Production-shaped starters live in templates/ — a FastAPI service, Flask app, Django app, Streamlit dashboard, Celery async worker, and a pandas batch ETL. The dashboard is a one-command demo:
3. Natural language over the database (cubrid-mcp-server)¶
Claude Desktop / Claude Code / Cursor config blocks are in the cubrid-mcp-server README. Once connected, ask:
- "What tables are in this database?" →
all_table_names - "Show the structure of
cookbook_sales" →describe_table - "Top 5 products by revenue" →
execute_query(read-only) - "Drop the orders table" → rejected by the read-only whitelist (this refusal is the feature)