Professional Documents
Culture Documents
1. Cu lnh INSERT
Cu lnh INSERT cho php thm cc dng d liu vo mt bng xc nh. C hai bin th ca lnh INSERT: cch th nht l thm mt dng gi tr, cch th hai l thm mt tp cc dng tr v t mt cu lnh SELECT. Thm mt dng gi tr INSERT INTO table_name [(column_name,...)] VALUES((expression | DEFAULT),...),(...),... INSERT to mt dng mi trong bng <table_name> . Dng mi cha cc gi tr xc nh bi cc biu thc trong danh sch VALUES. Nu column_name khng c a vo, th trnh t cc ct trong bng <table_name> c s dung. Nu column_name c a, theo cch ny, dng d liu mi c thm vo bng bng cch xc nh tn ct v d liu cho mi ct. V d: thm mt bn ghi vo bng offices INSERT INTO classicmodels.offices (officeCode, city, phone, addressLine1, addressLine2, state,
country, postalCode, territory ) VALUES ('8', 'Boston', '+1 215 837 0825', '1550 dummy street', NULL, 'MA, 'USA', '02107', 'NA' ) Nu gi tr cha xc nh c th s dng t kha NULL. S dng gi tr ngm nh bng t kha DEFAULT. C th kim tra kt qu ca lnh trn bng cu lnh truy vn: SELECT * FROM classicmodels.offices
Ch : Nu khng xc nh tn cc ct, khi trt t ca cc ct thay i, SQL c th a gi tr vo sai v tr. Do cch tt trnh iu ny l xc nh tn ct i km vi d liu khi thm d liu vo bng. Thm nhiu dng vi lnh SELECT Ngoi ra thay v cung cp d liu trc tip, c th chn t cc bng khc s dng cu lnh SELECT. INSERT INTO table_name [(column_name,...)] <SELECT statement>; Khng ging vi cch trc, cch ny cho php to nhiu dng d liu vi. Danh sch cc ct kt qu ca lnh SELECT phi trng vi danh sch cc ct ca bng. Cng ging nh cch trc, cc ct khng xc nh s c gn gi tr ngm ngm ca ct. V d: to mt bng tm v thm vo tt c cc offices ti US INSERT INTO temp_table SELECT * FROM classicmodels.offices WHERE country = 'USA' C th kim tra kt qu ca lnh trn bng cu lnh truy vn: SELECT * FROM classicmodels.temp_table
2. Cu lnh UPDATE
Cu lnh UPDATE c s dng cp nht d liu tn ti trong cc bng ca CSDL. Cu lnh c th dng thay i cc gi tr ca mt dng, mt nhm cc dng hoc thm ch tt c cc dng trong mt bng. Cu trc ca cu lnh UPDATE nh sau: UPDATE table_name [, table_name...] SETcolumn_name1=expr1 [, column_name2=expr2 ...] [WHEREcondition]
Sau t kha UPDATE l tn bng mun thay i d liu. Mnh SET xc nh ct thay i v gi tr thay i. Gi tr thay i c th l gi tr c nh, biu thc hoc thm ch mt truy vn con.
Mnh WHERE xc nh cc dng ca bng s c cp nht. Nu mnh WHERE b b qua, tt c cc dng ca bng s b cp nht.
Mnh WHERE rt quan trng, khng nn b b qua. Nu ch mun thay i mt dng ca mt bng, nhng qun mnh WHERE s cp nht ton b bng.
Nu mt cu lnh UPDATE vi phm bt c rng buc ton vn no, MySQL s khng thc hin cp nht v a ra thng bo li
V d: Trong bng employees, nu mun cp nht email ca Diane Murphy vi employeeNumber l 1002 thnh diane-murphy @classicmodelcars.com, Thc hin cu truy vn sau: SELECT firstname, lastname, email
Kt qu cp nht email mi diane-murphy@classicmodelcars.com UPDATE employees SET email = 'diane-murphy @classicmodelcars.com' WHERE employeeNumber = 1002 Thc hin cu truy vn SELECT li, s thy email thay i gi tr mi:
3. Cu lnh DELETE
xa cc dng d liu ca mt bng CSDL, s dng cu lnh DELETE. Cu trc lnh DELETE nh sau: DELETE FROM table_name [WHEREconditions]
Sau DELETE FROM l tn bng mun xa cc bn ghi. Mnh WHERE xc nh iu kin gii hn cc dng mun loi b. Nu mt bn ghi tha mn iu kin WHERE s b loi b khi bng CSDL.
Nu mnh WHERE b b qua trong cu lnh DELETE, tt c cc dng ca bng s b xa. gim s nguy him ca cc cu lnh nh DELETE hoc UPDATE, nn lun lun kim tra iu kin WHERE trong mt cu lnh SELECT trc khi thc hin lnh DELELE hoc UPDATE.
V d: Xa tt c cc nhn vin trong vn phng c m officeNumber l 6, thc hin cu truy vn sau: DELETE FROM employees WHERE officeCode = 6 Thc hin li cu lnh truy vn trn bng employees.Trong bng khng cn cc dng c officeCode = 6
Ch : Nu loi b iu kin WHERE DELETE FROM employees S xa tt c cc dng ca bng employees. Do cn ch iu kin trong mnh WHERE khi thc hin lnh DELETE. MySQL cng h tr xa cc bn ghi t nhiu bng khc nhau. V d: xa tt c cc nhn vin (employee) lm vic cho vn phng c m officecode 1 v cng c vn phng . DELETE employees,offices FROM employees,offices WHERE employees.officeCode = offices.officeCode offices.officeCode = 1 AND
Sau khi thc hin lnh xa d liu trn, kim tra li cc bng d liu Bng employees khng cn cc dng nhn vin c officeCode = 1
Nu chng ta xa mt dng d liu trong bng productline m vn cn tn ti cc dng d liu trong bng products tham chiu ti dng d liu ny, ngm nh s khng c php. V d: Xa cc dng sn phm c m l Ships DELETE FROM productlines WHERE productLine='Ships' S hin thng bo li Cannot delete or update a parent row: a foreign key constraint fails (`classicmodels`.`products`, CONSTRAINT `fk_products_productlines` FOREIGN KEY (`productLine`) REFERENCES `productlines` (`productLine`) ON DELETE NO ACTION ON UPDATE NO ACTION) Nu khai bo kha ngoi vi ty chn ON DELETE CASCADE, h thng s t ng xa cc dng d liu trong bng products tham chiu ti dng d liu ny. Nu khai bo kha ngoi vi ty chn ON DELETE SET NULL, th kha ngoi productLine ca cc dng tham chiu s c thit lp l NULL.
Bi tp thc hnh
1. Thc hnh cc lnh INSERT, UPDATE v DELETE trn cc bng trong hnh
di y ca CSDL classicmodels.
2.
ngy gn y nht t bng orderdetails vo bng trn. 3. Sa cc nhn vin c titleJob l Sales Rep thnh Sales Representative