Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2014, 17:57   #1
maxfox123
Пользователь
 
Регистрация: 07.07.2013
Сообщений: 15
По умолчанию Комментарии к таблицам Постгресса

Здравствуйте,

может кто-нибудь подсказать в чем моя ошибка при выполнении следующих действий:
Необходимо добавить комментарии, на русском, к автоматически создаваемым таблицам и столбцам таблиц в постгрессе.
То есть когда в PgAdmin раскрывается список
“Servers\Databases\имя моей базы \Schemas\ имя моей схемы \” и выделяется список созданных таблиц, то что бы у каждой таблицы в списке «Table, Owner, Comment» был комментарий на русском языке. И когда выделяешь определенную таблицу, то что бы у каждого столбца был комментарий на русском языке. (Комментарии на английском получаются и все хорошо)

Пытаюсь выполнить это создание комментариев следующим образом

запускаю cmd файл с вот такими записями
Код:
chcp 1251
SET PGPASSWORD=user1234
"c:\Program Files\PostgreSQL\9.3\bin\psql.exe" -U postgres --no-password -f settings5.sql
pause
Как я понимаю, я захожу в постгрес как пользователь postgres и выполняю мой файл settings5.sql

Код:
Код settings5
--Creating Role
CREATE ROLE User_user WITH LOGIN PASSWORD 'User_user' SUPERUSER CREATEDB CREATEROLE;
UPDATE pg_authid SET rolcatupdate=false WHERE rolname='User_user';
--Creating DB
CREATE DATABASE "User_Base" WITH OWNER=User_user ENCODING 'UTF8' TABLESPACE = DEFAULT;
--Connecting to DB
\connect User_Base;
--Creating Schema in User_Base db
CREATE SCHEMA User_schema AUTHORIZATION User_user;
CREATE TABLE User_schema.Table_AccountFIO (
	id SERIAL NOT NULL,
    id_AccountIdentifier numeric CONSTRAINT firstkey PRIMARY KEY,
    id_LastName          text,
    id_FirstName         text,
    id_MiddleName        text
);
ALTER TABLE User_schema.Table_AccountFIO OWNER TO User_user;
COMMENT ON TABLE User_schema.Table_AccountFIO IS 'Таблица';
COMMENT ON COLUMN User_schema.table_accountfio.id_lastname IS 'тестовый случай';
Но после выполнения этого моего .sql файла в комментариях к таблице и столбцу “АРАБСКАЯ ВЯЗЬ” то есть кракозябры.

Пробовал ставить
CREATE DATABASE "User_Base" WITH OWNER=User_user ENCODING 'WIN1251' TABLESPACE = DEFAULT;
получаю ошибку “psql:settings5.sql:5: ERROR: encoding "WIN1251" does not match locale "English_United States.1252"”, которую в данном случае, просто не знаю как побороть.

Еще раз (только сильно не бейте):

Как добавить комментарии, на русском, к автоматически создаваемым таблицам и столбцам таблиц в постгрессе


Не знаю важно или нет
Сам скрипт написан в нотепад+ в кодировке WIN1251
maxfox123 вне форума Ответить с цитированием
Старый 30.10.2014, 20:45   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

А ты не думаешь что проблема как раз в PgAdmin?
Т.е. может быть комменты добавляются норм, просто тулза та не умеет их отображать нормально?
Проверить чем-то еще другим можешь?
Цитата:
Не знаю важно или нет
Ну вообще-то важно. Хорошо что упомянул. Первая мысля была - скрипт в другой кодировке.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.10.2014, 22:50   #3
maxfox123
Пользователь
 
Регистрация: 07.07.2013
Сообщений: 15
По умолчанию

пробовал устанавливать кодировку (в нотепад++) для скрипта "UTF8 without BOM"

получаю ошибки
psql:settings5.sql:46: ERROR: character with byte sequence 0x8f in encoding "WIN1252" has no equivalent in encoding "UTF8"

Цитата:
Проверить чем-то еще другим можешь?
А чем это можно проверить? если можно подскажите
maxfox123 вне форума Ответить с цитированием
Старый 30.10.2014, 23:04   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
если можно подскажите
Даж не знаю... Никогда не работал с этой СУБД. Я просто предположил что проблема в инструменте а не в локалях БД. Может ошибся.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.10.2014, 20:39   #5
maxfox123
Пользователь
 
Регистрация: 07.07.2013
Сообщений: 15
По умолчанию

комментарии на русском теперь вставляются
SQL файлы написаны в нотепад++ в кодировке UTF8 without BOM

--------------------------------------------------------prepareDB3.cmd---------------------------------------------------------------
chcp 1251
SET PGPASSWORD=bars1234
"c:\Program Files\PostgreSQL\9.3\bin\psql.exe" -U postgres --no-password -f settings30.sql
pause
--------------------------------------------------------prepareDB4.cmd---------------------------------------------------------------
chcp 1251
"c:\Program Files\PostgreSQL\9.3\bin\psql.exe" --dbname FMBZ_Base --username fmbz_user -f settings31.sql
pause
--------------------------------------------------------settings30.sql---------------------------------------------------------------
--Creating Role
SET client_encoding = 'UTF8';
DROP ROLE IF EXISTS FMBZ_user;
CREATE ROLE FMBZ_user WITH LOGIN PASSWORD 'FMBZ_user' SUPERUSER CREATEDB CREATEROLE;
UPDATE pg_authid SET rolcatupdate=false WHERE rolname='FMBZ_user';
COMMENT ON ROLE fmbz_user IS 'мама';

CREATE DATABASE "FMBZ_Base"
WITH OWNER=FMBZ_user ENCODING='UTF8' TABLESPACE = DEFAULT;
COMMENT ON DATABASE "FMBZ_Base" IS 'папа и молоко и черный';
--------------------------------------------------------settings31.sql---------------------------------------------------------------
--Creating Role
SET client_encoding = 'UTF8';
CREATE SCHEMA FMBZ_user AUTHORIZATION FMBZ_user;
COMMENT ON SCHEMA FMBZ_user IS 'молоко';


CREATE TABLE FMBZ_user.Table_AccountFIO (
id SERIAL NOT NULL,
id_AccountIdentifier numeric CONSTRAINT firstkey PRIMARY KEY,
id_LastName text
);
ALTER TABLE FMBZ_user.Table_AccountFIO OWNER TO FMBZ_user;
COMMENT ON TABLE FMBZ_user.Table_AccountFIO IS 'чай';
COMMENT ON COLUMN fmbz_user.table_accountfio.id_lastn ame IS 'водка';
maxfox123 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрос по двум таблицам Alina111 SQL, базы данных 2 11.01.2013 20:20
Ограничение доступа к таблицам по IP sergey_dmitrievich C/C++ Базы данных 2 16.12.2011 16:54
Firebird комментарии к таблицам полям и тд vovk БД в Delphi 2 07.10.2009 05:42
перемещение по двум таблицам Alexi Общие вопросы Delphi 5 04.06.2009 13:30