Проблема создания таблицы в PostGIS
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 13 мар 2009, 14:03
- Репутация: 0
Проблема создания таблицы в PostGIS
Создал БД добавил туда lwpostgis.sql и spatial_ref_sys.sql
Пытаюсь добавить туда сконвертированный из MapInfo->SHP->SQL файлик вываливает такую ошибку и что с ней делать не знаю:
man sql # psql -d tbov -f chast_dom.sql
BEGIN
psql:chast_dom.sql:3: NOTICE: CREATE TABLE создаст подразумеваемую последовательность "chast_dom_gid_seq" для serial-колонки "chast_dom.gid"
psql:chast_dom.sql:3: NOTICE: CREATE TABLE / PRIMARY KEY создаст подразумеваемый индекс "chast_dom_pkey" для
таблицы "chast_dom"
CREATE TABLE
addgeometrycolumn
--------------------------------------------------------------
public.chast_dom.the_geom SRID:4326 TYPE:MULTIPOLYGON DIMS:2
(1 запись)
psql:chast_dom.sql:5: ERROR: неверная последовательность байт имя кодировки "UNICODE": 0xc009
CONTEXT: COPY chast_dom, строка 47: "29▒ SRID=4326;0106000000010000000103000000010000000500000083A7A9BB3A2E5C41D20382ECC9766C410578F1C637..."
ROLLBACK
Пытаюсь добавить туда сконвертированный из MapInfo->SHP->SQL файлик вываливает такую ошибку и что с ней делать не знаю:
man sql # psql -d tbov -f chast_dom.sql
BEGIN
psql:chast_dom.sql:3: NOTICE: CREATE TABLE создаст подразумеваемую последовательность "chast_dom_gid_seq" для serial-колонки "chast_dom.gid"
psql:chast_dom.sql:3: NOTICE: CREATE TABLE / PRIMARY KEY создаст подразумеваемый индекс "chast_dom_pkey" для
таблицы "chast_dom"
CREATE TABLE
addgeometrycolumn
--------------------------------------------------------------
public.chast_dom.the_geom SRID:4326 TYPE:MULTIPOLYGON DIMS:2
(1 запись)
psql:chast_dom.sql:5: ERROR: неверная последовательность байт имя кодировки "UNICODE": 0xc009
CONTEXT: COPY chast_dom, строка 47: "29▒ SRID=4326;0106000000010000000103000000010000000500000083A7A9BB3A2E5C41D20382ECC9766C410578F1C637..."
ROLLBACK
-
- Гуру
- Сообщения: 810
- Зарегистрирован: 22 авг 2007, 14:58
- Репутация: 123
- Откуда: Казань
Re: Проблема создания таблицы в PostGIS
Судя по ошибке, дело в том, что, у вас кодировка базы не совпадает с кодировкой в sql файле. Поэтому вам нужно ваш sql-файл конвертировать в нужную кодрировку.Magicus писал(а): psql:chast_dom.sql:5: ERROR: неверная последовательность байт имя кодировки "UNICODE": 0xc009
CONTEXT: COPY chast_dom, строка 47: "29▒
Например, если у вас кодировка файла windows-1251 (она, вероятно, используется в MapInfo), а базе utf-8 (это кодировка в настройках postgresql по умолчанию), то вам нужно конвертнуть получившийся sql файл: windows-1251 --> utf-8.
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 13 мар 2009, 14:03
- Репутация: 0
Re: Проблема создания таблицы в PostGIS
Базу я пробовал создавать и в utf и cp1251 итого везде один. Ну если перекодировать то чем там посути дела одни циферки чем их перекодировать? Или при добавление как-то можно указать в какой кодировки я отправляю ему?
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 13 мар 2009, 14:03
- Репутация: 0
Re: Проблема создания таблицы в PostGIS
Проблему решил! Добавил в начало sql-файла строчку:
SET CLIENT_ENCODING TO 'WIN1251';
SET CLIENT_ENCODING TO 'WIN1251';
-
- Интересующийся
- Сообщения: 47
- Зарегистрирован: 13 апр 2009, 14:34
- Репутация: 0
- Откуда: Астрахань
- Контактная информация:
Re: Проблема создания таблицы в PostGIS
А у меня вот какая проблема - создала sql-файлик (по образу и подобию как конвертируется из shp) - только там нет пространтсвенных данных, обычная таблица...содержание такое
пытаюсь загрузить с помощью команды
C:\Program Files\PostgreSQL\8.3\bin>psql -U postgres -f "C:\Program Files\Postgr
eSQL\8.3\bin/chair.sql" -d postgis
Выдает ошибку:
psql:C:/Program Files/PostgreSQL/8.3/bin/chair.sql:1: ERROR: syntax error at or
near "яюB"
СТРОКА 1:яюB
^
Что это???
Код: Выделить всё
BEGIN;
CREATE TABLE "chair"("ID" int4 PRIMARY KEY,
"name" varchar(100));
INSERT INTO "chair" VALUES (1,'Гидробиология и общая экология');
INSERT INTO "chair" VALUES (2,'Математика');
INSERT INTO "chair" VALUES (3,'Иностранные языки в гуманитарном и естественно-научном образовании');
INSERT INTO "chair" VALUES (4,'Общая, неорганическая и аналитическая химия');
.....
END;
C:\Program Files\PostgreSQL\8.3\bin>psql -U postgres -f "C:\Program Files\Postgr
eSQL\8.3\bin/chair.sql" -d postgis
Выдает ошибку:
psql:C:/Program Files/PostgreSQL/8.3/bin/chair.sql:1: ERROR: syntax error at or
near "яюB"
СТРОКА 1:яюB
^
Что это???
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость