Таблица не создается

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
natbampo
Сообщения: 8
Зарегистрирован: 06 сен 2010, 13:16

Таблица не создается

Сообщение natbampo » 23 сен 2010, 09:07

Привет.
В ibexpert выполняю запрос:

Код: Выделить всё

CREATE TABLE atc12 (
  ida int  NOT NULL ,
  aname varchar(10) NOT NULL,
  name varchar(255) NOT NULL,
  parent int DEFAULT NULL,
  PRIMARY KEY (ida)
);
ошибки не выдает. Если повторно его выполнить - ошибка, уже существует.
Но в списке таблиц почему то не появляется и при попытке вставить запись пишет - неизвестная таблица.
В чем дело? Спасибо.

gmixo
Сообщения: 8
Зарегистрирован: 22 сен 2010, 08:44

Re: Таблица не создается

Сообщение gmixo » 23 сен 2010, 09:44

может commit не делаешь?

natbampo
Сообщения: 8
Зарегистрирован: 06 сен 2010, 13:16

Re: Таблица не создается

Сообщение natbampo » 23 сен 2010, 09:55

спасибо большое.

natbampo
Сообщения: 8
Зарегистрирован: 06 сен 2010, 13:16

Re: Таблица не создается

Сообщение natbampo » 23 сен 2010, 10:18

Не подскажите еще.
У меня есть дамп mysql вида:

Код: Выделить всё

CREATE TABLE IF NOT EXISTS `regions` (
  `idr` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `parent` int(10) unsigned DEFAULT NULL,
  PRIMARY KEY (`idr`),
  KEY `regionname` (`name`(10))
) ENGINE=MyISAM  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=9310001 ;

--
-- Дамп данных таблицы `regions`
--

INSERT INTO `regions` (`idr`, `name`, `parent`) VALUES
(1000000, 'РОССИЙСКАЯ ФЕДЕРАЦИЯ', 0),
(5040000, 'ЧЕЛЯБИНСКАЯ ОБЛАСТЬ', 50000),
(8170000, 'Г. ЧЕЛЯБИНСК', 5040000),
...
хочу через окошко запроса выполните все эти запросы и чтобы создались наполненные таблички.
Синтаксис create table поменяю, ну и остальное. Но вот множественное добавление строк не фурычит.
Можно как то это организовать?

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: Таблица не создается

Сообщение Dimitry Sibiryakov » 23 сен 2010, 14:49

Берёшь текстовый редактор, умеющий массовую замену, хотя бы и sed. Заменяешь открывающую скобку в начале строки на INSERT....VALUES, а запятую в конце строки на точку с запятой. Всё, телемаркет. Получившийся скрипт скармливаешь любому исполнятору.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: Таблица не создается

Сообщение kdv » 23 сен 2010, 23:13

синтаксис MySQl для insert херовый, не соответствует стандарту.

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: Таблица не создается

Сообщение Dimitry Sibiryakov » 25 сен 2010, 14:29

Потому что это не скрипт, а дамп. Аналог нашего бэкапа (который тоже отнюдь не является стандартным).

Ответить