|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Добрый день! Такая ситуация, что база была создана в win1251 и был добавлены поля в UTF8. Сейчас хочу всю базу перевести в UTF8. Подскажите как это сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 10:54 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
FireBird 2.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 11:10 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozent, http://www.ibase.ru/unicode_faq.html - извлечь скрипт из базы (isql -x), убрать все упоминания win1251, но отметить все упоминания collate, чтобы сделать то же самое для юникода. - создать базу из этого скрипта в UTF8 - скопировать все данные из старой базы в новую каким-нибудь инструментом - IBPump, FBCopy, и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 11:24 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Извините, затык! Выгрузил метаданные, упоминания о win1251 там не было. Убрал ещё кодировку у полей utf8. начинаю загружать скрипт, говорит что база не открыта, как обратится к базе? Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 12:27 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozent, что значит "загружать скрипт"? Скрипт - должен начинаться с create database если базы нет, или с connect ... если пустая база создана. - должен выполняться в isql, ibexpert, и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 12:37 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
ну я через ibExpert "Инструменты- редактор скриптов" делаю http://c2n.me/iXvxuT.png ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 12:42 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozent, set names none почему стоит в начале скрипта? почему не раскомментирован create database? почему у create database стоит character set none, когда должен быть UTF8? ... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 12:45 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
kdv, авторset names none почему стоит в начале скрипта? так было выгружено, куда его переместить? И вместо NONE нужно написать utf8 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 12:57 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozentтак было выгружено, куда его переместить? И вместо NONE нужно написать utf8 ? Do what you want just how you like nobody has to know сделай себе create database таким, как он тебе нужен. Я не понимаю, как такие вопросы могут исходить от программиста, который УЖЕ сделал базу и приложение с Firebird. Непонятно? Прочитай langref.pdf и langref update про create database. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 13:04 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Да извиняюсь) паралельно ещё кое что делаю) думать не охото:) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 13:11 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
kdv как такие вопросы могут исходить от программиста впрочем, понятно, если программист создает одну базу один раз, да еще в IBExpert. разумеется, дальше ему этот create database не уперся. Хотя... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 13:22 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozentдумать не охото:)Типичное признание типичного паразита... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 13:25 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
kdvЯ не понимаю Это же доцент, у него все топики такие. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 13:25 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Подскажите плз. Вот шас создал базу без данных теперь все поля которые варчар имеют указание кодировки utf8 и COLLATION UNICODE. Так должно быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 13:27 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, и второй! идите в пень! Нет! Просто стыдно признаться что затык возникает на таких мелочах, а вы тролли! Могли бы и не писать сюда... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 13:33 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
DozentМогли бы и не писать сюда... Ты бы тоже мог не писать, если бы прочёл FAQ по ссылке из первого ответа. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 13:36 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozentвсе поля которые варчар имеют указание кодировки utf8 и COLLATION UNICODE. ГДЕ они имеют такое указание? В IBExpert, по идее, при совпадении с чарсетом и коллэйтом БД никакой чарсет показываться не должен (в ddl). ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 14:22 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Ну вот у меня на все поля типа VARCHAR показывает utf8, этого указания раньше не было. Меня это смущает. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 14:41 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozent, сравни с базой в 1251. Там показывалось win1251. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 15:03 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
kdv, на скрине там было NONE, создал базу на utf8. Там тоже самое прописыватся. Загрузить данные пока не получается) Перечитываю FAQ... ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 15:12 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozentна скрине там было NONE ну, поздравляю. А что ты говорил тогда про "база была создана в win1251 и был добавлены поля в UTF8"? Dozentсоздал базу на utf8. Там тоже самое прописыватся. "то же самое" это что именно? isql прямо NONE пишет, хотя у базы дефолтный чарсет utf8? Вот я из базы, созданной в UTF, извлек скрипт в о боже, не в isql IBExpert. Вижу Код: sql 1. 2. 3. 4.
Выставляю чарсет коннекта NONE - нет, нихрена, все равно такой же скрипт выходит. DozentЗагрузить данные пока не получается) Перечитываю FAQ... ты чего-то не то делаешь. Если не осилил create database, ну создай тогда базу в IBExpert в utf8, а в скрипте раскомментируй connect, а остальные параметры create database закомментируй. И примени этот скрипт на пустой базе uft8. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 15:32 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
kdv, Да не:) я скриптом создал базу, залит туда структуру, указав utf8. Всё структура есть, меня смутила что у полей varchar кодировка была прописана, не ожидал там её увидеть... Да и база первоначально похоже была создана без указания какой либо кодировки вообще... (создавал не я) Сейчас есть база и её структура на utf без данных. Попытался залить через "редактор скриптов" IBExperta (что за isql понятия не имею) , выдаёт ошибку Malformed, вроде бы всё верно делаю, перечитаю чуть попоже, мб что-то упустил. Но если я копирую запросы и по 5-10 штук закидываю их в редактор скриптов. то они проходят) а весь файл *.sql обрабатывается с ошибкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 16:12 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozentвыдаёт ошибку Malformed, ищи русские буквы в скрипте. в процедурах, триггерах. Dozentсоздана без указания какой либо кодировки вообще... (создавал не я) мда, грабли. указывать none в источнике при копировании нельзя, т.к. в utf8 эти данные пойдут криво. Придется указывать явно win1251 (вместо none), с надеждой, что они именно так в none и были введены. Dozent(что за isql понятия не имею) ты хоть раз в папку Firebird\bin заглядывал? может, ты и про gbak понятия не имеешь? :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2014, 16:52 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
kdv, чесно:) смутное) знаю что через gbak делается бакап базы ну и копирование нужно делать через бакап/рестор... а как там оно, при необходимости в инете ищу. Раньше вроде бы в IBExpert не было резервного копирования и востсановления... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2014, 00:33 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozent Раньше вроде бы в IBExpert не было резервного копирования и востсановления... оно всегда там было, с тех пор как в IB6 появилась поддержка Services API. http://www.ibase.ru/devinfo/gbak.htm Но при этом, все равно нужно знать утилиты, поставляемые с FB, и всегда и везде одинаково работающие на любой платформе. Хотя бы, нужно знать об их существовании, и для чего они нужны. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2014, 00:48 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
kdvНо при этом, все равно нужно знать утилиты, поставляемые с FB, и всегда и везде одинаково работающие на любой платформе. Хотя бы, нужно знать об их существовании, и для чего они нужны. Ого,может ещё и книги по Firebird читать? :) Можно же просто зайти на форум и парить всех глупыми вопросами ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2014, 04:54 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
GallemarkdvНо при этом, все равно нужно знать утилиты, поставляемые с FB, и всегда и везде одинаково работающие на любой платформе. Хотя бы, нужно знать об их существовании, и для чего они нужны. Ого,может ещё и книги по Firebird читать? :) Можно же просто зайти на форум и парить всех глупыми вопросами "Ой,дяденька, а зачем нам папочка ..\bin?" ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2014, 15:36 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
DarkMaster "Ой,дяденька, а зачем нам папочка ..\bin?" ;) неа,папочка /doc и файлик Firebird_v2.5.3.ReleaseNotes.pdf ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2014, 17:34 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Модератор покарай тролей!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2014, 21:28 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
проблему пока не решил, как решу отпишусь, прошу тему не закрывать... ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2014, 21:29 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
DozentМодератор покарай тролей!!! самоубийца? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2014, 21:40 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
kdv, спасибо за ответы. Базу удачно перевёл в utf8... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2014, 01:51 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
а нет! не совсем удачно, картинки из blob полей пропали, похоже что-то не так сделал... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2014, 01:54 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
я так понимаю у меня не полная версия, но ведь IBExpert для нас бесплатный ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2014, 02:10 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dozent,не полная версия чего, IBE? Скачай и распакуй http://www.ibexpert.com/rus/ibe_sfx.exe ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2014, 07:47 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Перевёл базу из WIN-1251 в UTF8. IBExpert теперь при открытии таблицы выводит ошибку: block size exceed implementation restriction 20859735 Есть какие-то ограничения на общий размер текстовых полей одной таблицы? Например, если в таблице есть 2-4 поля varchar общим размером более 8191 символ. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:09 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11, 64K на запись таблицы ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:17 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
т.е. это 16000 символов на таблицу? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:22 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Нашёл проблему с вычисляемыми полями. Вычисляемое поле получает значение их хранимой процедуры. Размер выходного параметра процедуры = 4000. А получившийся размер поля = 16000. Это нормально? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:26 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11Это нормально?не делай в юникоде поля длиннее 8к. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:39 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Я не делаю. Firebird сам "поставил" 16000 вместо 4000. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:40 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11Например, если в таблице есть 2-4 поля varchar общим размером более 8191 символ.в трешке это ограничение сильно отодвинуто и уже совершенно не ограничивает. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:40 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
What is it "сам"? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:41 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11, удали вычисляемое поле. Перекомпилируй ХП и вновь добавь ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:41 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky, не совсем. В трёшке на таблицу точно такое же ограничение, а вот на резалтсет действительно увеличено. Т.е. через декомпозицию записи на несколько таблиц в связке 1-1 можно добиться желаемого. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:43 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Симонов ДенисX11, удали вычисляемое поле. Перекомпилируй ХП и вновь добавь не помогло ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:44 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11, шапку процедуры и DDL таблицы приведи. Сама БД пересоздана в UTF-8 или отдельные поля переведены? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:46 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyWhat is it "сам"? При добавлении/создании вычисляемого поля вы ведь не указываете размер поля. Его указывает сам Firebird. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:47 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Симонов Денисшапку процедуры и DDL таблицы приведи. Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:48 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Симонов ДенисСама БД пересоздана в UTF-8 или отдельные поля переведены? Полностью пересоздана из скрипта и данные перезалиты. Ошибок при выполнении скрипта не было. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 11:49 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11, сделай явный cast в вычисляемом поле ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:10 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Симонов ДенисX11, сделай явный cast в вычисляемом поле А как же остальные работают? Проблема только у меня что ли? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:29 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Симонов ДенисX11, сделай явный cast в вычисляемом поле всё равно 16000 IBExpert показывает скрипт создания домена Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:35 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11, а в IBE правильная кодировка подключения выбрана? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:40 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Заглянул в RDB$FIELDS, там в поле RDB$FIELD_LENGTH указано 16000. А здесь http://www.ibase.ru/unicode_faq/ написано, что RDB$FIELD_LENGTH - это размер столбца в байтах. Т.е. всё ОК по идее. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:42 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
А вот в поле RDB$CHARACTER_LENGTH указано 0 (ноль). Так и должно быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:43 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Хорошо, если бы Firebird более развернутый текст ошибки показывал, например, имя поля и/или процедуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:53 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11А как же остальные работают? Проблема только у меня что ли? Остальные знают что такое чарсеты и сколько байт на символ в них может быть. Но нет, проблема не только у тебя, таких как ты много. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:55 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11А как же остальные работают?Никогда не делал селектов внутрях домена, как-то даже в голову не приходило. Заменить таблицу с вычисляемыми полями вьюхой? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 12:59 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovX11А как же остальные работают? Проблема только у меня что ли? Остальные знают что такое чарсеты и сколько байт на символ в них может быть. Но нет, проблема не только у тебя, таких как ты много. Я знаю, что UTF8 - это 4 байта на символ. IBExpert, как я понимаю, в поле Длина показывает размеры и в байтах, и в символах одновременно? Например, там, где "1", там односимвольные поля. А там, где 16000, там 4000 символов, но показывает 16000, значит в байтах. Но "визуально" и если не знаешь, то непонятно, например, 500 - это в байтах или в символах? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 13:07 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
Вопрос вдогонку. При создании varchar поля, какой более правильный размер будет: 255 или 256, 1024 или 1023? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 13:20 |
|
Изменить кодировку базы
|
|||
---|---|---|---|
#18+
X11IBExpert, как я понимаю, в поле Длина показывает размеры и в байтах, и в символах одновременно? С вопросами "что именно показывает эксперт" - в соответствующий раздел. Ибо это может быть хоть температура на Марсе. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2017, 13:23 |
|
|
start [/forum/topic.php?all=1&fid=40&tid=1561390]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
60ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
96ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 215ms |
0 / 0 |