Spec-Zone .ru
спецификации, руководства, описания, API
|
The simplest form of SELECT
retrieves everything from a table:
mysql> SELECT * FROM pet;
+----------+--------+---------+------+------------+------------+| name | owner | species | sex | birth | death |+----------+--------+---------+------+------------+------------+| Fluffy | Harold | cat | f | 1993-02-04 | NULL || Claws | Gwen | cat | m | 1994-03-17 | NULL || Buffy | Harold | dog | f | 1989-05-13 | NULL || Fang | Benny | dog | m | 1990-08-27 | NULL || Bowser | Diane | dog | m | 1979-08-31 | 1995-07-29 || Chirpy | Gwen | bird | f | 1998-09-11 | NULL || Whistler | Gwen | bird | NULL | 1997-12-09 | NULL || Slim | Benny | snake | m | 1996-04-29 | NULL || Puffball | Diane | hamster | f | 1999-03-30 | NULL |+----------+--------+---------+------+------------+------------+
This form of SELECT
is useful if you want to review your entire table, for example, after you've just loaded it with your initial
data set. For example, you may happen to think that the birth date for Bowser doesn't seem quite right.
Consulting your original pedigree papers, you find that the correct birth year should be 1989, not 1979.
There are at least two ways to fix this:
Edit the file pet.txt
to correct the error, then
empty the table and reload it using DELETE
and LOAD DATA
:
mysql>DELETE FROM pet;
mysql>LOAD DATA LOCAL INFILE 'pet.txt' INTO TABLE pet;
However, if you do this, you must also re-enter the record for Puffball.
Fix only the erroneous record with an UPDATE
statement:
mysql> UPDATE pet SET birth =
'1989-08-31' WHERE name = 'Bowser';
The UPDATE
changes only the record in question and does not require you
to reload the table.