पायथन पोस्टग्रेक्सेल - ड्रॉप टेबल

आप DROP टेबल स्टेटमेंट का उपयोग करके PostgreSQL डेटाबेस से एक टेबल ड्रॉप कर सकते हैं।

वाक्य - विन्यास

PostgreSQL में DROP टेबल स्टेटमेंट का सिंटैक्स निम्नलिखित है -

DROP TABLE table_name;

उदाहरण

मान लें कि हमने निम्नलिखित प्रश्नों का उपयोग करके CRICKETERS और EMPLOYEES नाम से दो तालिकाएँ बनाई हैं -

postgres=# CREATE TABLE CRICKETERS (
   First_Name VARCHAR(255), Last_Name VARCHAR(255), Age int, 
   Place_Of_Birth VARCHAR(255), Country VARCHAR(255)
);
CREATE TABLE
postgres=#
postgres=# CREATE TABLE EMPLOYEE(
   FIRST_NAME CHAR(20) NOT NULL, LAST_NAME CHAR(20), AGE INT, 
   SEX CHAR(1), INCOME FLOAT
);
CREATE TABLE
postgres=#

अब यदि आप "\ dt" कमांड का उपयोग करते हुए तालिकाओं की सूची को सत्यापित करते हैं, तो आप ऊपर बनाई गई तालिकाओं को देख सकते हैं -

postgres=# \dt;
List of relations
Schema  | Name       | Type  | Owner
--------+------------+-------+----------
public  | cricketers | table | postgres
public  | employee   | table | postgres
(2 rows)
postgres=#

निम्नलिखित कथन डेटाबेस से कर्मचारी नाम की तालिका को हटाता है -

postgres=# DROP table employee;
DROP TABLE

चूंकि आपने कर्मचारी तालिका को हटा दिया है, यदि आप फिर से तालिकाओं की सूची प्राप्त करते हैं, तो आप इसमें केवल एक तालिका का निरीक्षण कर सकते हैं।

postgres=# \dt;
List of relations
Schema  | Name       | Type  | Owner
--------+------------+-------+----------
public  | cricketers | table | postgres
(1 row)
postgres=#

यदि आप कर्मचारी तालिका को फिर से हटाने की कोशिश करते हैं, क्योंकि आपने पहले ही इसे हटा दिया है, तो आपको एक त्रुटि मिलेगी जिसमें कहा गया है कि "तालिका मौजूद नहीं है" जैसा कि नीचे दिखाया गया है -

postgres=# DROP table employee;
ERROR: table "employee" does not exist
postgres=#

इसे हल करने के लिए, आप DELTE स्टेटमेंट के साथ IF EXISTS क्लॉज का उपयोग कर सकते हैं। यह तालिका को हटा देता है यदि यह मौजूद है तो DLETE ऑपरेशन को छोड़ देता है।

postgres=# DROP table IF EXISTS employee;
NOTICE: table "employee" does not exist, skipping
DROP TABLE
postgres=#

पायथन का उपयोग करके एक पूरी तालिका को निकालना

DROP स्टेटमेंट का उपयोग करके आपको जब भी जरूरत हो, एक टेबल ड्रॉप कर सकते हैं। लेकिन आपको किसी भी मौजूदा तालिका को हटाते समय बहुत सावधानी बरतने की आवश्यकता है क्योंकि किसी तालिका को हटाने के बाद खोए गए डेटा को पुनर्प्राप्त नहीं किया जाएगा।

import psycopg2

#establishing the connection
conn = psycopg2.connect(
   database="mydb", user='postgres', password='password', host='127.0.0.1', port= '5432'
)

#Setting auto commit false
conn.autocommit = True

#Creating a cursor object using the cursor() method
cursor = conn.cursor()

#Doping EMPLOYEE table if already exists
cursor.execute("DROP TABLE emp")
print("Table dropped... ")

#Commit your changes in the database
conn.commit()

#Closing the connection
conn.close()

उत्पादन

#Table dropped...