MySQL Insert, Delete & Update

Inserting Data in MySQL Tables

किसी भी table का जब तक उसमें data ना हो कोई भी महत्व नहीं होता है। एक बार table create करने के बाद आप उसमें data store करना प्रारंभ कर सकते है। किसी भी database table में data store करने के कई तरीके हो सकते है। यँहा इस article में आपको INSERT statement के साथ data store करना बताया जायेगा।

INSERT statement के साथ data store करना सबसे common तरीका होता है। Insert statement का उपयोग आप 3 प्रकार से कर सकते है।

  • INSERT with VALUES clause
  • INSERT with SET clause
  • INSERT with SELECT clause

इन तीनों तरीकों को नीचे detail से समझाया जा रहा है।

INSERT with VALUES Clause

VALUES clause के साथ INSERT statement को tables में नई rows add करने के लिए यूज़ किया जाता है। इस तरह के statements में आप directly values define करते है। आप चाहे तो column names भी define कर सकते है लेकिन ऐसा करना optional होता है।

किसी भी row की values order में लिखी जाती है और उन्हें comma (,) से separate किया जाता है। साथ ही आपको ये भी ध्यान रखना चाहिए की सभी string values को single quotes में define किया जाता है। इस तरह के statement का basic syntax नीचे दिया जा रहा है।

mysql > INSERT INTO table_name (Col,Col2,Col3) VALUES (Val,Val2,Val3);

Col, Col2 और Col3 table के वो columns है जिनमें आप values store करवाएंगे। Val, Val2 और Val3 वो values है जो table के इन columns में store होगी।

उदाहरण के लिए मान लीजिये आप नीचे दी गयी Employee table में values store करवाना चाहते है।

ऐसा आप इस प्रकार कर सकते है।

mysql > insert into Employee (Id,Name,Age,Salary) values (101,’John’,30,40000);  

उपर दिए गए उदाहरण में Employee table में एक INSERT statement के द्वारा row insert करवाई गयी है। इसी प्रकार आप दूसरी row भी add कर सकते है।

mysql > insert into Employee (Id,Name,Age,Salary) values (102,’Max’,25,25000);

इन दोनों queries के execute होने के बाद आपकी table कुछ इस प्रकार दिखाई देगी।

INSERT with SET Clause

INSERT statement के साथ SET clause भी tables में values store करने के लिए यूज़ किया जाता है। लेकिन यदि आप हर column के लिए value separately define करना चाहते है तो आप इस statement को यूज़ कर सकते है। इस statement का general syntax नीचे दिया जा रहा है।

mysql >  INSERT INTO table-name SET col=val, col2=val2, col3=val3, coln=valn;

इस तरह के statements में values column name के आगे assignment operator (=) लगाकर लिखी जाती है। सभी columns और values के pair को comma से separate किया जाता है।

उपर दी गयी table में SET clause के साथ values आप इस प्रकार install करवा सकते है।

mysql > insert into Employee set Id=103, Name=’Bob’ Age=45, salary=10000;

INSERT with SELECT Clause

SELECT clause के साथ INSERT statement किसी एक column में दूसरे column की values copy करने के लिए यूज़ किया जाता है। यदि आपने अभी तक SELECT statement के बारे में नहीं पढ़ा है तो आप इससे related tutorial पढ़ सकते है।

इस तरह के statement में सबसे पहले आप INSERT statement लिखते है और columns define करते है। इसके बाद आप बाद आप SELECT statement के द्वारा किसी दूसरे column को select करते है। इस query के execute होने पर selected column की values नयी row में copy हो जाती है। इस statement का syntax नीचे दिया जा रहा है।

mysql > INSERT INTO table-name (col,col1,col2) SELECT columns FROM table-name WHERE column=value;

किसी दूसरी table से भी आप ये values copy कर सकते है जिसमें current table की तरह ही columns हो। इस statement का उदाहरण नीचे दिया जा रहा है।

mysql > insert into Employee (Id,Name,Age,Salary) SELECT P_Id, P_Name, P_Age, P_Salary from PersonInfo where P_Id=205;

उपर दिए गए उदाहरण में PersonInfo table के column को Employee table में copy किया गया है।

Deleting Rows From MySQL Tables

यदि आप table की किसी row को delete करना चाहते है तो इसके लिए आप DELETE statement यूज़ करते है। ये statement पूरी row को delete करता है। लेकिन यदि आप row को delete ना करके उसके data को delete करना चाहते है तो इसके लिए आपको TRUNCATE statement यूज़ करना चाहिए। इस statement के बारे में आपको आगे बताया जायेगा।

DELETE statement के साथ आप WHERE clause यूज़ करते है। यदि आप WHERE clause यूज़ नहीं करते है तो table की सभी rows delete हो जाती है। WHERE clause के द्वारा आप जिस row को delete करना चाहते है उसे define कर सकते है।

DELETE statement का general syntax नीचे दिया जा रहा है।

mysql > DELETE FROM table-name WHERE column-name=value;

आइये अब DELETE statement को एक उदाहरण से समझने का प्रयास करते है। उपर insert की गयी rows में से यदि आप किसी row को delete करना चाहते है तो ऐसा आप इस प्रकार कर सकते है।

mysql > delete from Employee WHERE Id=101;

उपर दी गयी query के execute होने पर Employee table की first row delete हो जाएगी।

Updating Data in MySQL Tables

UPDATE statement rows के content को modify करने के लिए यूज़ किया जाता है। इस statement की मदद से आप columns की values को update कर सकते है। इस statement का general syntax नीचे दिया जा रहा है।

mysql > UPDATE <table-name>SET column-name=value WHERE column-name=value;

UPDATE statement के साथ आप SET और WHERE clause यूज़ करते है। WHERE clause के माध्यम से आप बताते है की किस row के column को update करना है। SET clause के द्वारा आप particular column को target करते है और उसे update करते है। आइये अब इसे एक उदाहरण से समझने का प्रयास करते है।

mysql > update Employee set Salary=5000 where Name=’John’;

उपर दिए गए उदाहरण में एक specific column को target किया गया है। यदि आप चाहे तो table की सभी rows के column को भी update कर सकते है। उदाहरण के लिए मान लीजिये आप सभी employees की salary 20% बढ़ाना चाहते है तो ऐसा आप इस प्रकार कर सकते है।

mysql > update Employee set Salary=Salary*1.2;

उपर दिए गए उदाहरण में सभी employees की salary update करके 20% से बढ़ा दी गयी है।