What is Truncate Table ?
SQL లో ఒక Table లోని అన్ని Records తొలగించడానికి TRUNCATE TABLE కమాండ్ ఉపయోగిస్తారు. దీనితో Table structure మారదు, కానీ అందులో ఉన్న data అంతా తొలగిపోతుంది.
ఈ command వేగంగా పనిచేస్తుంది ఎందుకంటే ఇది transaction logs ని ఉపయోగించదు. కాబట్టి పెద్ద tables లో డేటా తొలగించడానికి బావుంటుంది.
Syntax
TRUNCATE TABLE table_name;table_name: మీరు డేటా తొలగించాలనుకుంటున్న table పేరు.
Example
ముందుగా PRODUCTS అనే table create చేద్దాం:
CREATE TABLE PRODUCTS (
ID INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(50),
PRICE DECIMAL(10,2)
);ఆ తర్వాత కొంచెం data insert చేస్తాం:
INSERT INTO PRODUCTS (NAME, PRICE) VALUES
('Pen Drive', 450),
('Mouse', 300),
('Keyboard', 600);ఇప్పుడు TRUNCATE ఉపయోగించి డేటా తొలగిద్దాం:
SELECT * FROM PRODUCTS;ఈ query run చేస్తే ఖాళీ ఫలితం వస్తుంది – అంటే అన్ని records delete అయిపోయాయి.
TRUNCATE vs DELETE – తేడాలు
| Feature | TRUNCATE | DELETE |
|---|---|---|
| Logs | No logs – faster | Logs every row |
| WHERE Clause | Not allowed | Can be used |
| Auto-increment reset | Yes (MySQL/SQL Server) | No |
| Speed | Very fast | Slower |
Oracle లో auto-increment రీసెట్ జరగదు.
Best Practices
TRUNCATEexecute చేయడానికి ముందు data backup తీసుకోండి.- Production DB లో
TRUNCATEఉపయోగించకూడదు. - Stored procedures, views లో reference ఉంటే జాగ్రత్త.
- Table name సరిగా ఉందో verify చేయండి.
Conclusion
TRUNCATE TABLE అనేది ఒక table లోని అన్ని డేటాను వేగంగా తొలగించడానికి ఉపయోగించే powerful command. ఇది సులభంగా ఉంటుంది కానీ జాగ్రత్తగా ఉపయోగించాలి.