Как присвоить значение одного столба другому?

kaifo

Guest
Как присвоить значение одного столба другому?

Как сделать такое:

PHP:
UPDATE table SET old_status=status, status='0' WHERE id='$id'
а то не работает.
 

Сергей123

Новичок
Что именно не работает? Запрос не выполняется (тогда что пишет?)? Выполняется, но не делает то, что хотел (а что ты хотел?)? Может ты это хотел:
>> UPDATE assignments are evaluated from left to right.
>> For example, the following statement doubles the age column, then increments it:
>>mysql> UPDATE persondata SET age=age*2, age=age+1;
? Что?
 

kaifo

Guest
мне нужно что бы в old_status было помещено значение status, а сам статус затем изменен на status='0'

-~{}~ 30.07.05 17:00:

> Запрос не выполняется (тогда что пишет?)? Выполняется, но не делает то, что хотел (а что ты хотел?)?

Просто ничего не делает. Ошибок не выдает.
 

Сергей123

Новичок
Замени свою строку с query на это
PHP:
mysql_query('
    UPDATE table SET
    old_status=status,
    status="0"
    WHERE id="' . intval($id) . '"
');
echo '<br>1. err: ' . mysql_error();
echo '<br>2. aff: ' . mysql_affected_rows();
Что выводит?
 

kaifo

Guest
1. err: You have an error in your SQL syntax near 'WHERE id='122' ' at line 1
2. aff: -1

-~{}~ 30.07.05 17:09:

о работает! сщас буду разбираться почему не работало.. (переcтало когда я добавил old_status=status)

-~{}~ 30.07.05 17:14:

Нашел причину: запятая была лишняя (в посте ее нет, а в программе есть - я то просто подумал что может нельзя присваивать значения столбцов а не стал искать синтаксическую ошибку )

>Бресь Сергей

Спасибо.
 
Сверху