Python MySQL Create Table


पिछले topic में आपने सीखा कि Python में कैसे database create / delete करते हैं , इस topic में आप सीखेंगे कि किसी database के अंदर कैसे table create करते हैं।


Python में MySQL database से data fetch करने के लिए use किये जाने वाले function तो लगभग same ही रहते हैं, बस आपको MySQL की knowledge होनी चाहिए जिससे आप queries को अच्छे से लिख सकें।

Python MySQL Create Table Example

Database के अंदर table create करने के लिए , सबसे पहले तो उस database connect करते समय ही connect() method में database name pass किया जाना चाहिए select करना होता है। उसके बाद execute() method में table create करने की query लिखनी होती है।

Copy Fullscreen Close Fullscreen
import mysql.connector as myconn

# here python_db is database name.
mydb = myconn.connect(
  host = 'localhost',
  user = 'root',
  password = '',
  database = 'python_db'
)
db_cursor = mydb.cursor()
query = "CREATE TABLE tbl_users (id INT AUTO_INCREMENT PRIMARY KEY, first_name VARCHAR(30) NOT NULL, last_name VARCHAR(30) NOT NULL, email VARCHAR(50) DEFAULT NULL)"
db_cursor.execute(query)

अगर ऊपर दिया गया code बिना किसी error के run हुआ तो database में table create हो चुकी है।

Explain :
MySQL में table create करने के लिए , उसके attributes / columns को उनके type के साथ declare करना पड़ता है।

  1. दिए गए example में define की गयी MySQL query में सबसे पहले table का name tbl_users दिया गया है।

  2. उसके बाद table का सबसे पहला column id लिया गया है , जिसका type int (integer) है , Auto Increment (means इसकी value automatically increase होती रहेगी , हमें insert नहीं करनी पड़ेगी ) है , इसके अलावा Primary key भी है जिससे की इसी field bases पर बाकी operations(edit / delete) perform कर सकें।

  3. Table का दूसरा field first_name है जिसका type varchar है और value की maximum length 30 है , Not Null भी है means record insert करते समय इसमें value insert करनी ही पड़ेगी।

  4. ठीक first_name की तरह ही last_name भी हैं।

  5. Table का 4th column email है , जिसकी length 50 है , लेकिन यह by default null set है , means record insert करते समय इसके लिए value required नहीं है।


MySQL में हर column का type define करना पड़ता है जिससे पता चल सके कि उस column में किस तरह का data store होगा।
Read More About MySQL Data Types

Show All Tables In Database

सभी databases की listing करने के लिए आपको show tables command run करनी पड़ेगी। फिर for loop का use करके आप सभी tables की listing कर सकते हैं।

Copy Fullscreen Close Fullscreen
import mysql.connector as myconn

# here python_db is database name.
mydb = myconn.connect(
  host = 'localhost',
  user = 'root',
  password = '',
  database = 'python_db'
)
db_cursor = mydb.cursor()
query = "show tables"
db_cursor.execute(query)
for table in db_cursor : print(table)
Output
C:\Users\Rahulkumar\Desktop\python>python file.py
('tbl_users',)

Python MySQL Rename Table

Table को rename करने के लिए भी बाकी procedure तो same रहता है बस execute method men Query change हो जायगी।

import mysql.connector as myconn
mydb = myconn.connect(
  host = 'localhost',
  user = 'root',
  password = '',
  database = 'python_db'
)
db_cursor = mydb.cursor()
query = "RENAME TABLE tbl_users TO users"
db_cursor.execute(query)

तो कुछ इस तरह से Python द्वारा MySQL में Table को handle करते हैं।

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook