[vox-tech] mysql question: changing a record

Peter Jay Salzman vox-tech@lists.lugod.org
Sat, 10 Apr 2004 15:50:10 -0700


On Sat 10 Apr 04,  3:46 PM, @.edu <@.edu> said:
> On Sat, Apr 10, 2004 at 03:18:47PM -0700, Peter Jay Salzman wrote:
> 
> > in slash, there's a table named vars.
> > in vars, there's a field named ispell:
> > 
> >    mysql> select name, value from vars
> >        -> WHERE name = 'ispell';
> >    +--------+--------+
> >    | name   | value  |
> >    +--------+--------+
> >    | ispell | ispell |
> >    +--------+--------+
> > 
> > how do i change this value?  after some reading, i thought the answer
> > would be:
> > 
> >    mysql> UPDATE vars
> >        -> SET ispell = 'foobar';
> > 
> > but that generates an error:
> > 
> >    ERROR 1054: Unknown column 'ispell' in 'field list'
> > 
> > i don't understand the error message.  how is ispell an unknown field?
> 
> 'ispell' is the value of a column. the column names are 'name' and 'value'.
> 
> What you want is
> 
> 	mysql> UPDATE var
> 		-> SET name = 'A day at the beach'
> 		-> WHERE name = 'ispell';
> 
> hope this helps, 

yah.  so this changes the name of the variable.  if i wanted to change
the value of the variable, it would be:

 	mysql> UPDATE var
 		-> SET value = 'aspell'
 		-> WHERE name = 'ispell';

in other words, you SET field names, not individual records under the
field name.   does this mean that:

 	mysql> UPDATE var
 		-> SET name = 'foo';

would change each record's name in the var table to "foo"?

pete