Преобразование таблицы Postgresql в таблицу Mysql - PullRequest
0 голосов
/ 06 апреля 2011

У меня есть таблица polit_activity со схемой:

CREATE TABLE polit_activity
(
 id serial NOT NULL,
 category_name character varying,
 soi character varying,
 heading character varying,
 description character varying,
 event_loc character varying,
 relloc character varying,
 news_date timestamp with time zone,
 sectors character varying,
 results character varying,
 remarks character varying,
 recovery character varying,
 oth_pers character varying,
 mil_units character varying,
 mil_ops_cdr character varying,
 gp_org_cdr character varying,
 gr character varying
)
WITH (
 OIDS=FALSE
);

Теперь мне нужна та же таблица с теми же данными в базе данных Mysql. Я попробовал команды:

psql> \o /var/lib/abc.csv
psql> select * from polit_activity;

Я не могу загрузить этот файл в Mysql. Пожалуйста, помогите мне с самым простым способом сделать это.

Пожалуйста, проверьте прикрепленный CSV-файл

Спасибо и наилучшими пожеланиями, Адарш Шарма

1 Ответ

1 голос
/ 06 апреля 2011

Как минимум, вам нужно отредактировать файл SQL, извлеченный из PostgreSQL.PostgreSQL и MySQL имеют много общих функций, но разные способы использования этих функций.

В одном примере PostgreSQL и MySQL поддерживают автоматическое увеличение номеров идентификаторов, но для реализации этих номеров используются разные зарезервированные слова и технологии.PostgreSQL использует зарезервированное слово «SERIAL» как часть DDL в этом процессе;MySQL не делает.

Если файл PostgreSQL использует любое из зарезервированных слов MySQL в качестве имени таблицы или столбца, вам нужно защищать его обратными чертами.Обратные пометки недопустимы в PostgreSQL.

Если бы у меня была только одна таблица, я бы просто

  • переписал бы DDL, чтобы соответствовать требованиям MySQL,
  • сбросьте данные (не схему) на диск, используя pg_dump,
  • и считайте данные в новую таблицу MySQL.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...