Может ли один запрос выполнится частично?

uchenik

Новичок
Может ли один запрос выполнится частично, если при выполнении произойдет ошибка?

Может ли один запрос выполнится частично, если при выполнении произойдет ошибка?

Например:
PHP:
mysql_query("insert into table values (string), (string), (...)")
вставит одну запись, a затем вернет false.
Или
PHP:
mysql_query("update table set column='value'")
обновит несколько записей, но не все и вернет false.
 

ForJest

- свежая кровь
UPDATE может обновить не все записи, если записи не нуждаются в обновлении.
тебе нужен [m]mysql_affected_rows[/m]
 

uchenik

Новичок
В приведенном примере с UPDATE запрос отработает правильно,
меня интересует именно сбой при выполнении запроса. Возможна ли такая ситуация?
 

Oleg Marchuk

Человек
uchenik
А ты попробуй
[sql]
create table test {
id int primary key
};
insert into test (id) values (1), (1);
select * from test;
[/sql]
 

ForJest

- свежая кровь
uchenik
Да. Может. Если определён уникальный ключ, то при апдейте может слететь.
При insert то же самое.
 
Сверху