Hi

> mysql> SELECT prezzo, totale FROM ordini WHERE numordine=1157;

> mysql> UPDATE ordini SET prezzo = prezzo/1.024, totale = totale/1.024
> WHERE numordine>1385 AND dataord<'2003-06-01';

You are selecting data for numordine = 1157, but are updating all records
that have
numordine > 1385. 1157 < 1385. So you are not updating these records.

Best regards, Mikhail.


----- Original Message -----
From: "PaT!" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, June 06, 2003 19:00
Subject: UPDATE doesn't work


> Hi
> I'm running MySQL 4.0.13
> MS Windows XP Prof
>
> I've this problem:
> A db with a table called 'ordini'
>
> mysql> desc ordini;
> +-------------+---------------+------+-----+------------+---------------
> -+
> | Field       | Type          | Null | Key | Default    | Extra
> |
> +-------------+---------------+------+-----+------------+---------------
> -+
> | id          | int(11)       |      | PRI | NULL       | auto_increment
> |
> | numordine   | int(10)       |      |     | 0          |
> |
> | descrizione | varchar(150)  |      |     |            |
> |
> | marca       | varchar(250)  |      |     |            |
> |
> | modello     | varchar(250)  |      |     |            |
> |
> | generica    | varchar(250)  |      |     |            |
> |
> | quantita    | int(10)       |      |     | 0          |
> |
> | prezzo      | decimal(10,3) |      |     | 0.000      |
> |
> | type        | varchar(10)   |      |     |            |
> |
> | dataord     | date          |      |     | 0000-00-00 |
> |
> | nominativo  | varchar(200)  |      |     |            |
> |
> | totale      | decimal(10,3) |      |     | 0.000      |
> |
> | fromprev    | int(11)       | YES  |     | NULL       |
> |
> | ptype       | varchar(20)   | YES  |     | NULL       |
> |
> | idutente    | int(11)       | YES  |     | NULL       |
> |
> | codcliente  | varchar(8)    | YES  |     | NULL       |
> |
> | datamod     | date          | YES  |     | NULL       |
> |
> +-------------+---------------+------+-----+------------+---------------
> -+
> 17 rows in set (0.00 sec)
>
> I need to update some values in two fields 'prezzo' and 'totale' These
> are the values before the UPDATE
>
> mysql> SELECT prezzo, totale FROM ordini WHERE numordine=1157;
> +--------+--------+
> | prezzo | totale |
> +--------+--------+
> |  6.795 |  6.795 |
> | 13.835 | 13.835 |
> | 17.578 | 17.578 |
> | 62.500 | 62.500 |
> +--------+--------+
> 4 rows in set (0.02 sec)
>
> this is the UPDATE query
>
> mysql> UPDATE ordini SET prezzo = prezzo/1.024, totale = totale/1.024
> WHERE numordine>1385 AND dataord<'2003-06-01';
> Query OK, 1649 rows affected (0.10 sec)
> Rows matched: 1650  Changed: 1649  Warnings: 0
>
> These are the values after the UPDATE
>
> mysql> SELECT prezzo, totale FROM ordini WHERE numordine=1157;
> +--------+--------+
> | prezzo | totale |
> +--------+--------+
> |  6.795 |  6.795 |
> | 13.835 | 13.835 |
> | 17.578 | 17.578 |
> | 62.500 | 62.500 |
> +--------+--------+
> 4 rows in set (0.02 sec)
>
> Why the values didn't update?
> The same query applied on a single row works perfectly.
>
> Any help is appreciated
>
> PaT!
>
>
>
>
>
> --
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]
>


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to