Ravindra BagaleCourses & study guides

10. MySQL Part 1: Install, Create, Insert and SELECT

10.2 Working with Databases

Database mhanje tables cha folder. Pratyek application sathi vegla database thevaycha.

CREATE DATABASE cybercourse;                  -- create
CREATE DATABASE IF NOT EXISTS cybercourse;    -- no error if it already exists
SHOW DATABASES;                               -- list all
USE cybercourse;                              -- select it for the next commands
SELECT DATABASE();                            -- which one am I using?
SHOW TABLES;                                  -- tables inside it
-- DROP DATABASE cybercourse;                 -- deletes everything inside! (commented on purpose)
Statement type Meaning Examples
DDL – Data Definition Structure CREATE, ALTER, DROP, TRUNCATE, RENAME
DML – Data Manipulation Rows INSERT, UPDATE, DELETE
DQL – Data Query Reading SELECT
DCL – Data Control Permissions GRANT, REVOKE
TCL – Transaction Control Transactions START TRANSACTION, COMMIT, ROLLBACK

Why this matters for security

In SQL injection, SELECT schema_name FROM information_schema.schemata and SHOW TABLES-style queries are how an attacker maps your databases. Least privilege means the web app user can see only its own database, so even a successful injection cannot list the others.

Ravindra Bagale's Tip

Many students forget USE cybercourse; and panic at the "No database selected" error. After every new login, run USE first or check with SELECT DATABASE();. And don't forget the ; at the end in SQL – when the prompt shows ->, MySQL is waiting for your semicolon.

Practice task

Create databases cybercourse and testdb, list them, switch between them with USE, and drop testdb.