Не могу вставить выборку в таблицу (Insert .... Select)

ruff3d
Дата: 28.01.2013 10:33:57
Импортирую данные из разных БД (FoxPro, Paradox и т.д.) В качестве IDE использую dbForge for MySQL.
SELECT со всеми JOINами проходит без проблем (20 сек), результат отображается все данные выборки. Но как только вставляю сверху INSERT INTO table SELECT ... - выполняется долго и безрезультатно.

Запрос типа -
INSERT INTO ADR.CHERN (`F`, `I`, `O`, `DR`, `UL`, `D`, `KV`, `ROD`, `PRIM`, `WYP`)
SELECT PEOPLE.FAM #AS `F`
     , PEOPLE.IM #AS `I`
     , PEOPLE.OTCHE AS `O`
     , PEOPLE.GOD_R AS `DR`
     , SU.NU #AS `UL`
     , FLAT.KD  AS `D`
     , FLAT.FLAT AS `KV`
     , SPR_R.`NAME` AS `ROD`
     , concat_ws(" - ", DATE_FORMAT(PEOPLE.DATA_ROG, '%d.%m.%Y р.н.'), PEOPLE.TIN, PEOPLE.MESTO_RAB, PEOPLE.PRIM, PEOPLE.RAB_TEL, PEOPLE.KC, FLAT.KG) AS `PRIM`
     , concat_ws(' - ', QUITLIST.SDRG_CAUSE, DATE_FORMAT(PEOPLE.DATA_WYP, '%d.%m.%Y')) AS `WYP`
FROM
  ADR.PEOPLE
LEFT OUTER JOIN ADR.FLAT
ON PEOPLE.LS = FLAT.LS
LEFT OUTER JOIN ADR.SU
ON FLAT.KU = SU.KU
LEFT OUTER JOIN ADR.SPR_R
ON SPR_R.`CODE` = PEOPLE.RODSTVO
LEFT OUTER JOIN ADR.QUITLIST
ON QUITLIST.`CODE` = PEOPLE.QUITCODE


параметры таблиц -
CREATE TABLE [b]adr.chern[/b](
  f VARCHAR(25) DEFAULT NULL,
  i VARCHAR(25) DEFAULT NULL,
  o VARCHAR(25) DEFAULT NULL,
  dr VARCHAR(11) DEFAULT NULL,
  ul VARCHAR(40) DEFAULT NULL,
  d VARCHAR(6) DEFAULT NULL,
  kv VARCHAR(8) DEFAULT NULL,
  rod VARCHAR(30) DEFAULT NULL,
  prim VARCHAR(255) DEFAULT NULL,
  wyp VARCHAR(40) DEFAULT NULL
)
ENGINE = INNODB
AVG_ROW_LENGTH = 199
CHARACTER SET utf8
COLLATE utf8_general_ci;


CREATE TABLE [b]adr.people[/b](
  LS VARCHAR(8) DEFAULT NULL,
  `DATE` DATE DEFAULT NULL,
  DATA_PROP DATE DEFAULT NULL,
  KOD_PROP INT(1) DEFAULT NULL,
  DATA_WYP DATE DEFAULT NULL,
  QUITCODE INT(2) DEFAULT NULL,
  NPP INT(2) DEFAULT NULL,
  FAM VARCHAR(25) DEFAULT NULL,
  IM VARCHAR(10) DEFAULT NULL,
  OTCHE VARCHAR(15) DEFAULT NULL,
  GOD_R VARCHAR(8) DEFAULT NULL,
  RODSTVO INT(2) DEFAULT NULL,
  TIN VARCHAR(10) DEFAULT NULL,
  MESTO_RAB VARCHAR(30) DEFAULT NULL,
  PRIM VARCHAR(50) DEFAULT NULL,
  RAB_TEL VARCHAR(6) DEFAULT NULL,
  WYBYL VARCHAR(15) DEFAULT NULL,
  KC VARCHAR(12) DEFAULT NULL,
  DATA_ROG DATE DEFAULT NULL
)
ENGINE = INNODB
AVG_ROW_LENGTH = 156
CHARACTER SET utf8
COLLATE utf8_general_ci;



CREATE TABLE [b]adr.flat[/b](
  KG INT(2) DEFAULT NULL,
  KU INT(3) DEFAULT NULL,
  KD VARCHAR(6) DEFAULT NULL,
  FLAT VARCHAR(14) DEFAULT NULL,
  LS VARCHAR(8) DEFAULT NULL
)
ENGINE = INNODB
AVG_ROW_LENGTH = 494
CHARACTER SET utf8
COLLATE utf8_general_ci;



CREATE TABLE [b]adr.quitlist[/b](
  CODE INT(2) DEFAULT NULL,
  SDRG_CAUSE VARCHAR(30) DEFAULT NULL,
  NAME_CAUSE VARCHAR(10) DEFAULT NULL,
)
ENGINE = INNODB
AVG_ROW_LENGTH = 1024
CHARACTER SET utf8
COLLATE utf8_general_ci;




CREATE TABLE [b]adr.su[/b](
  KU INT(3) DEFAULT NULL,
  NU VARCHAR(25) DEFAULT NULL
)
ENGINE = INNODB
AVG_ROW_LENGTH = 157
CHARACTER SET utf8
COLLATE utf8_general_ci;


CREATE TABLE [b]adr.spr_r[/b](
  CODE INT(2) DEFAULT NULL,
  NAME VARCHAR(30) DEFAULT NULL,
)
ENGINE = INNODB
AVG_ROW_LENGTH = 327
CHARACTER SET utf8
COLLATE utf8_general_


В чем может быть проблема не пойму, привилегии стоят ВСЕ.
Жду Вашего ответа
trew
Дата: 28.01.2013 10:51:37
ruff3d,

Попробуйте вставить в ADR.CHERN
select '1', '2','3',.. и т.д. список констант. Получится?

Попробуйте в конце вашего большого слелекта добавить LIMIT 1. Инсерт произойдет?
ruff3d
Дата: 28.01.2013 10:59:35
с LIMIT вставка происходит...

теперь кажется начинаю понимать, что дело в оптимизации (индексировании)
Выходит мне осталось просто проиндексировать таблицы по ключевым полям по которым происходит выборка и Join
СПАСИБО!!!
DBConstructor
Дата: 28.01.2013 11:04:38
trew,

chern.kv VARCHAR(8)
flat.flat VARCHAR(14)
ruff3d
Дата: 28.01.2013 16:00:13
DBConstructor, да там все-равно поле макс 8 эл. и если что урежет до 8