powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Изменить кодировку базы
25 сообщений из 64, страница 1 из 3
Изменить кодировку базы
    #38754333
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день! Такая ситуация, что база была создана в win1251 и был добавлены поля в UTF8. Сейчас хочу всю базу перевести в UTF8. Подскажите как это сделать?
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754357
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FireBird 2.5
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754366
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozent,

http://www.ibase.ru/unicode_faq.html

- извлечь скрипт из базы (isql -x), убрать все упоминания win1251, но отметить все упоминания collate, чтобы сделать то же самое для юникода.
- создать базу из этого скрипта в UTF8
- скопировать все данные из старой базы в новую каким-нибудь инструментом - IBPump, FBCopy, и т.п.
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754452
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините, затык! Выгрузил метаданные, упоминания о win1251 там не было. Убрал ещё кодировку у полей utf8.
начинаю загружать скрипт, говорит что база не открыта, как обратится к базе?
Код: sql
1.
Cannot perform operation -- DB is not open.
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754471
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozent,

что значит "загружать скрипт"? Скрипт
- должен начинаться с create database если базы нет, или с connect ... если пустая база создана.
- должен выполняться в isql, ibexpert, и т.д.
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754481
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну я через ibExpert "Инструменты- редактор скриптов" делаю
http://c2n.me/iXvxuT.png
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754487
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozent,

set names none почему стоит в начале скрипта?
почему не раскомментирован create database?
почему у create database стоит character set none, когда должен быть UTF8?
...
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754511
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

авторset names none почему стоит в начале скрипта?
так было выгружено, куда его переместить? И вместо NONE нужно написать utf8 ?
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754525
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozentтак было выгружено, куда его переместить? И вместо NONE нужно написать utf8 ?
Do what you want
just how you like
nobody has to know


сделай себе create database таким, как он тебе нужен. Я не понимаю, как такие вопросы могут исходить от программиста, который УЖЕ сделал базу и приложение с Firebird.
Непонятно? Прочитай langref.pdf и langref update про create database.
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754541
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да извиняюсь) паралельно ещё кое что делаю) думать не охото:)
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754570
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv как такие вопросы могут исходить от программиста
впрочем, понятно, если программист создает одну базу один раз, да еще в IBExpert. разумеется, дальше ему этот create database не уперся. Хотя...
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754576
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozentдумать не охото:)Типичное признание типичного паразита...
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754577
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvЯ не понимаю
Это же доцент, у него все топики такие.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754581
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите плз. Вот шас создал базу без данных теперь все поля которые варчар имеют указание кодировки utf8 и COLLATION UNICODE.
Так должно быть?
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754597
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

и второй! идите в пень! Нет! Просто стыдно признаться что затык возникает на таких мелочах, а вы тролли! Могли бы и не писать сюда...
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754602
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DozentМогли бы и не писать сюда...
Ты бы тоже мог не писать, если бы прочёл FAQ по ссылке из первого ответа.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754699
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozentвсе поля которые варчар имеют указание кодировки utf8 и COLLATION UNICODE.
ГДЕ они имеют такое указание? В IBExpert, по идее, при совпадении с чарсетом и коллэйтом БД никакой чарсет показываться не должен (в ddl).
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754721
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот у меня на все поля типа VARCHAR показывает utf8, этого указания раньше не было. Меня это смущает.
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754728
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754764
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozent,

сравни с базой в 1251. Там показывалось win1251.
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754780
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

на скрине там было NONE, создал базу на utf8. Там тоже самое прописыватся.
Загрузить данные пока не получается)
Перечитываю FAQ...
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754825
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozentна скрине там было NONE
ну, поздравляю. А что ты говорил тогда про "база была создана в win1251 и был добавлены поля в UTF8"?

Dozentсоздал базу на utf8. Там тоже самое прописыватся.
"то же самое" это что именно? isql прямо NONE пишет, хотя у базы дефолтный чарсет utf8?
Вот я из базы, созданной в UTF, извлек скрипт в о боже, не в isql IBExpert.
Вижу
Код: sql
1.
2.
3.
4.
CREATE DATABASE 'localhost:D:\Firebird2\bin\UTF8.FDB'
USER 'SYSDBA' PASSWORD 'masterkey'
PAGE_SIZE 8192
DEFAULT CHARACTER SET UTF8;


Выставляю чарсет коннекта NONE - нет, нихрена, все равно такой же скрипт выходит.

DozentЗагрузить данные пока не получается)
Перечитываю FAQ...
ты чего-то не то делаешь. Если не осилил create database, ну создай тогда базу в IBExpert в utf8, а в скрипте раскомментируй connect, а остальные параметры create database закомментируй. И примени этот скрипт на пустой базе uft8.
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754908
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

Да не:) я скриптом создал базу, залит туда структуру, указав utf8. Всё структура есть, меня смутила что у полей varchar кодировка была прописана, не ожидал там её увидеть...
Да и база первоначально похоже была создана без указания какой либо кодировки вообще... (создавал не я)

Сейчас есть база и её структура на utf без данных. Попытался залить через "редактор скриптов" IBExperta (что за isql понятия не имею) , выдаёт ошибку Malformed, вроде бы всё верно делаю, перечитаю чуть попоже, мб что-то упустил. Но если я копирую запросы и по 5-10 штук закидываю их в редактор скриптов. то они проходят) а весь файл *.sql обрабатывается с ошибкой.
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38754997
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozentвыдаёт ошибку Malformed,
ищи русские буквы в скрипте. в процедурах, триггерах.

Dozentсоздана без указания какой либо кодировки вообще... (создавал не я)
мда, грабли. указывать none в источнике при копировании нельзя, т.к. в utf8 эти данные пойдут криво. Придется указывать явно win1251 (вместо none), с надеждой, что они именно так в none и были введены.

Dozent(что за isql понятия не имею)
ты хоть раз в папку Firebird\bin заглядывал? может, ты и про gbak понятия не имеешь? :-)
...
Рейтинг: 0 / 0
Изменить кодировку базы
    #38755392
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

чесно:) смутное) знаю что через gbak делается бакап базы ну и копирование нужно делать через бакап/рестор... а как там оно, при необходимости в инете ищу. Раньше вроде бы в IBExpert не было резервного копирования и востсановления...
...
Рейтинг: 0 / 0
25 сообщений из 64, страница 1 из 3
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Изменить кодировку базы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]