#1 12.04.06 13:09
[Mysql]КАК скопировать данные ?
Я хочу скопировать все записи на опрделенную дату на следующую дату.
не перенести, а скопировать можно ли это сделать средствами sql?
о способе select а потом insert сам догадался :-))))))))))))))))
Offline
#5 12.04.06 20:30
Re: [Mysql]КАК скопировать данные ?
Jaguar, нафига тебе структуры? читай толи правильно толи я не знаю)))
XuMiX, либо я чето не понял в записи либо не работает.
Код::
INSERT INTO kino_actions_response (`parent`,`name`,`text`,'2006-05-05', `active`,`ip`) SELECT `id`,`parent`,`name`,`text`,`active`,`ip` FROM kino_actions_response WHERE `dates`='2006-04-09')
Код::
CREATE TABLE `kino_actions_response` (
`id` int(11) NOT NULL auto_increment,
`parent` int(11) NOT NULL default '0',
`name` varchar(255) NOT NULL default '',
`text` text NOT NULL,
`dates` date NOT NULL default '0000-00-00',
`active` enum('Y','N') NOT NULL default 'Y',
`ip` varchar(50) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM;
--
-- Дамп данных таблицы `kino_actions_response`
--
INSERT INTO `kino_actions_response` VALUES (3, 1, '0', '111111', '2006-04-09', 'Y', '127.0.0.1');
INSERT INTO `kino_actions_response` VALUES (4, 1, '0', '0', '2006-04-09', 'Y', '127.0.0.1');
INSERT INTO `kino_actions_response` VALUES (5, 1, '0', '0', '2006-04-09', 'Y', '127.0.0.1');Исправлено Stell Hawk (12.04.06 20:31)
Offline
#6 12.04.06 20:34
Re: [Mysql]КАК скопировать данные ?
Код::
INSERT INTO kino_actions_response( `parent` , `name` , `text` , `dates` , `active` , `ip` ) SELECT `id` , `parent` , `name` , `text` , `dates` , `active` , `ip` FROM kino_actions_response WHERE `dates` = '2006-04-09'
а так ругается #1066 - Not unique table/alias: 'kino_actions_response'
Offline
#7 12.04.06 20:38
Re: [Mysql]КАК скопировать данные ?
Код::
INSERT INTO kino_actions_response( `parent` , `name` , `text` , `active` , `ip` , `dates` ) SELECT `parent` , `name` , `text` , `active` , `ip` , time( ) FROM kino_actions_response WHERE `dates` = '2006-04-09' #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '() FROM kino_actions_response WHERE `dates`='2006-04-09'' a
Offline
#8 12.04.06 21:35
Re: [Mysql]КАК скопировать данные ?
я структуру спрашивал из-за того, что куда тебе копировать? в туже самую таблицу или в другую... в любом разе структура таблиц должна совпадать...
попробуй так
Код: SQL:
INSERT INTO kino_actions_response( '', `parent` , `name` , `text` , NOW(), `active` , `ip` ) SELECT * FROM kino_actions_response AS tf WHERE tf.dates = '2006-04-09'
Offline
#10 13.04.06 10:15
Re: [Mysql]КАК скопировать данные ?
Jaguar, неа не пашет и вариации не пашут(
Offline
#11 13.04.06 12:15
Re: [Mysql]КАК скопировать данные ?
это из-за того, что с одной таблицей оперируешь... если хочешь чисто запросами, то надо тогда создавать временную таблицу... иначе тебе делать запрос на выборку, хранить в массиве, потом циклично добавлять...
вот так на сиквеле, например:
Код: SQL:
CREATE TEMPORARY TABLE tmp ( `date` date NOT NULL DEFAULT '2006-01-01', `ip` char( 16 ) COLLATE koi8r_bin NOT NULL DEFAULT '192.168.0.1', `cin` int( 255 ) UNSIGNED NOT NULL DEFAULT '0', KEY `date` ( `date` , `ip` ) ) ENGINE = MYISAM DEFAULT CHARSET = koi8r COLLATE = koi8r_bin; INSERT INTO tmp SELECT * FROM test WHERE date='2005-06-09'; INSERT INTO test SELECT * FROM tmp; DROP TABLE tmp;
Offline
#12 13.04.06 15:05
Re: [Mysql]КАК скопировать данные ?
Jaguar,ясно, значит будет как уже и сделал(((много запросов это плохо
Offline
#13 13.04.06 18:56
#14 15.04.06 16:34
Re: [Mysql]КАК скопировать данные ?
а ксати в psql это есть?или как
ЗЫ: я же пишу не для себя , каков хостинг такова и реализация))
Offline

