Папа
Дата: 05.02.2013 23:34:34
Доброго времени суток )
Подскажите в чем ошибка?
$sql = "
START TRANSACTION;
INSERT INTO `base`.`table` ( `id` , `s` , `b` ) VALUES ( NULL , '13', '345' );
INSERT INTO `base`.`table2` ( `id` , `ss` , `bb` ) VALUES ( NULL , '13', '345' );
COMMIT;
";
В базе нечего не записывается
miksoft
Дата: 05.02.2013 23:45:05
0) Нужно проверять успешность выполнения запросов и, в случае неуспеха, выводить текст ошибкию
1) Скорее всего та библиотека, которую вы используете для доступа к MySQL, не умеет выполнять несколько SQL-команд в одном запросе. Разбейте на несколько запросов.
Папа
Дата: 05.02.2013 23:45:46
Чтоб не возникал вопрос, добавлю, тип таблиц InnoDB
Папа
Дата: 05.02.2013 23:49:06
miksoft,
Пробывал:
mysql_query('SET AUTOCOMMIT=0;');
mysql_query('START TRANSACTION;');
$sql = "
INSERT INTO `base`.`table` ( `id` , `s` , `b` ) VALUES ( NULL , '13', '345' );
INSERT INTO `base`.`table2` ( `id` , `ss` , `bb` ) VALUES ( NULL , '13', '345' );
";
mysql_query($sql);
mysql_query('COMMIT;');
не выходит (
MikkiMouse
Дата: 05.02.2013 23:59:18
Папа,
Все так, как написал miksoft. Расширение mysql не умеет выполнять несколько SQL-команд в одном запросе. Не говоря уже о том, что оно безнадежно устарело и в скором времени из стандартной поставки PHP будет выпилено.
Не используйте его.
Папа
Дата: 06.02.2013 00:03:51
MikkiMouse,
Спасибо ) буду копать в сторону mysqli
думаю там этот вопрос решить проще :)
miksoft
Дата: 06.02.2013 00:20:47
| Папа |
|---|
miksoft,
Пробывал: mysql_query('SET AUTOCOMMIT=0;'); mysql_query('START TRANSACTION;');
$sql = " INSERT INTO `base`.`table` ( `id` , `s` , `b` ) VALUES ( NULL , '13', '345' ); INSERT INTO `base`.`table2` ( `id` , `ss` , `bb` ) VALUES ( NULL , '13', '345' ); ";
mysql_query($sql); mysql_query('COMMIT;');
не выходит ( |
Инсерты тоже разбивайте на отдельные вызовы.
И точки с запятой в конце запросов уберите.
Неужели так сложно в
доку глянуть?
Папа
Дата: 11.02.2013 10:28:12
miksoft,
Спасибо за подсказку, но Я решил использовать mysqli, и все вопросы отпали автоматически :)