Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Копирование данных в таблицу
 
 автор: mag   (18.08.2006 в 17:41)   письмо автору
 
 

Использовал с тему: http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=7138&page=2
переделал код для копирования данных с одной таблицы в другую таблицу:

<?php
include ('dbconfig.php');
$q=mysql_query("SELECT * FROM tb1 LIMIT 0,30");
while (
$data=mysql_fetch_array($q))
{
 
$qins=mysql_query("INSERT INTO tb2(
                          name,
                          price
                          )VALUES (
                          '"
.$data['name']."',
                          '"
.$data['']."',
                          );"
);
 echo 
$qins;
 
$rez=mysql_query($qins);
if(
$rez)
{
echo 
"Данные добавлены!";
}
}
?>

Поля не копируются и выводится пустая страница.
Таблицы по структуре отличаются. одинаковые 2 поля (name,quantity).
Как скопировать поля?

   
 
 автор: cheops   (18.08.2006 в 19:34)   письмо автору
 
   для: mag   (18.08.2006 в 17:41)
 

А вы что сделать хотите? получить точную копию?

PS $qins, кстати, дескриптор запроса, его не нужно предавать mysql_query().

   
 
 автор: Mag   (19.08.2006 в 02:15)   письмо автору
 
   для: cheops   (18.08.2006 в 19:34)
 

Хочу скопировать все записи с первой таблицы во вторую.

   
 
 автор: cheops   (19.08.2006 в 11:32)   письмо автору
 
   для: Mag   (19.08.2006 в 02:15)
 

Выполните запрос
INSERT INTO tbl2 SELECT * FROM tbl1

   
 
 автор: Mag   (20.08.2006 в 14:18)   письмо автору
 
   для: cheops   (19.08.2006 в 11:32)
 

Структура таблиц отличаются.

   
 
 автор: cheops   (20.08.2006 в 18:27)   письмо автору
 
   для: mag   (18.08.2006 в 17:41)
 

Тогда посмотрите какую ошибку возвращает запрос
<?php
 $qins
=mysql_query("INSERT INTO tb2( 
                          name, 
                          price 
                          )VALUES ( 
                          '"
.$data['name']."', 
                          '"
.$data['']."', 
                          );"
);
 if(!
$qins) exit("Ошибка - ".mysql_error());
?>

   
 
 автор: Mag   (20.08.2006 в 20:10)   письмо автору
 
   для: cheops   (20.08.2006 в 18:27)
 

Поставил проверку условия, как вы написали, но выводится пустая страница.

   
 
 автор: Mag   (21.08.2006 в 03:19)   письмо автору
 
   для: cheops   (20.08.2006 в 18:27)
 

....

   
 
 автор: Mag   (22.08.2006 в 17:39)   письмо автору
 
   для: Mag   (21.08.2006 в 03:19)
 

Кто копировал поля с таблици в таблицу, напишите как вы это делали. Вложил скрипт "копирования таблиц".

   
 
 автор: Trianon   (22.08.2006 в 18:26)   письмо автору
 
   для: Mag   (22.08.2006 в 17:39)
 

вообще-то копирование таблиц выполняется одним SQL-запросом.
Если таблицы разные
INSERT INTO dest_table (dest_columns...) SELECT src_columns... FROM src_table
а если таблицы одинаковые, то еще проще
INSERT INTO dest_table SELECT * FROM src_table

   
 
 автор: mag   (23.08.2006 в 14:08)   письмо автору
 
   для: Trianon   (22.08.2006 в 18:26)
 

Спасиба, работает.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования