← Back to MySQL Course | Chapter 2: Databases & Tables | Lesson 4 of 7

CREATE TABLE

CREATE TABLE name और age जैसी column headings वाला एक खाली chart draw करने जैसा है, और यह बताना कि हर column में किस तरह की चीज़ जाती है।
Syntax
sql
CREATE TABLE [IF NOT EXISTS] table_name (
  column1 datatype,
  column2 datatype,
  ...
);

एक Simple Table बनाना

CREATE TABLE एक ही statement में किसी table का name, इसकी columns, और हर column का data type define करता है, structural blueprint बनाते हुए जिसे उस point से हर row follow करेगी। हर column के लिए पहले से सही data type चुनना मायने रखता है, क्योंकि इसे बाद में एक बड़ी table पर बदलना एक धीमा, disruptive operation हो सकता है।

उदाहरण: Creating a Simple Table

sql
CREATE TABLE users (
  id INT,
  name VARCHAR(50),
  age INT
);

Tables को Safely बनाना

CREATE TABLE के बाद IF NOT EXISTS एक script को error होने से रोकता है अगर table पहले से मौजूद हो, जो एक से ज़्यादा बार safely चलने के लिए बनी setup scripts के लिए standard practice है।

उदाहरण: Safely Creating Tables

sql
CREATE TABLE IF NOT EXISTS users (id INT, name VARCHAR(50));

Primary Keys Add करना

एक PRIMARY KEY column हर row को uniquely identify करता है और कभी NULL नहीं रख सकता, MySQL को individual records efficiently locate, join, और index करने का एक reliable तरीका देते हुए। ज़्यादातर tables एक single-column PRIMARY KEY इस्तेमाल करती हैं, अक्सर AUTO_INCREMENT के साथ pair की गई, हालाँकि कई columns में एक composite key भी possible है।

उदाहरण: Adding Primary Keys

sql
CREATE TABLE users (
  id INT PRIMARY KEY,
  name VARCHAR(50)
);

Auto Increment इस्तेमाल करना

AUTO_INCREMENT MySQL को insert पर automatically अगला sequential integer generate करने को कहता है, इसलिए आपको कभी manually अगली available ID track या supply नहीं करनी पड़ती। यह लगभग हमेशा एक PRIMARY KEY column के साथ pair किया जाता है, क्योंकि auto-generated IDs rows को uniquely identify करने का सबसे common तरीका हैं।

उदाहरण: Using Auto Increment

sql
CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50)
);

⚠️ This is MySQL-specific syntax. It cannot run in the browser editor. Practice this on your local MySQL installation.

Constraints Define करना

NOT NULL, UNIQUE, और DEFAULT जैसे column-level constraints database layer पर ही data-quality rules enforce करते हैं, application-level validation कभी skip या buggy होने पर भी bad data पकड़ते हुए।

उदाहरण: Defining Constraints

sql
CREATE TABLE users (
  id INT PRIMARY KEY,
  email VARCHAR(100) NOT NULL UNIQUE,
  status VARCHAR(20) DEFAULT 'active'
);
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
आम गलतियां
  1. बिना IF NOT EXISTS के CREATE TABLE users दो बार चलाना, जो एक table already exists error के साथ fail हो जाता है।
  2. एक data type या length भूल जाना, जैसे name VARCHAR, जो एक syntax error है।
  3. बिना एक primary key के एक table बनाना, ताकि duplicate rows रोके या target न किए जा सकें।
🔒

Chapter Quiz — Complete all 7 topics to unlock

0/7 topics done

Complete these topics first:

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.