|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, процедура хранимая. Вызывается так: Код: sql 1.
Ошибка та же. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 13:46 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
Проапдейтил значение поля на "ёпрст". Код: sql 1.
Без ошибок. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 13:48 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
Marcello, вот не дает ошибок процедура (из багрепорта), ни с твоими символами, ни с русскими буквами. чарсет коннекта - utf8. если у тебя чарсет коннекта win1251 - конечно будет ошибка на твоих символах. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 13:55 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
kdvесли у тебя чарсет коннекта win1251 не должно влиять на запрос без литералов типа update set column1=column2 если там конечно нет returning ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 14:14 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
Arioch, я могу допустить глюк с unicode_fss -> utf8, но в примерах процедур чарсеты переменных и столбцов совпадают. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 14:25 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
Проделал все сначала, подытоживаю. 1. Коннект UNICODE_FSS. 2. Создаю новое поле Код: sql 1.
3. Делаю апдейт Код: sql 1.
4. В процедуре к переменной и результату добавляю character set utf8 . 5. Запрос из процедуры работает корректно Код: sql 1.
Причем запрос работает на коннекте и UNICODE_FSS, и UTF8. Думаю, что проблема решена. Всем спасибо за помощь. p.s. Не совсем понятно, зачем в процедуре указывать character set utf8, если и поле utf8, и коннект utf8, но без этого set'а не работает. p.p.s. Того же результата удалось добиться через апдейт существующего поля PTX_VALUE на UTF8 вот так: Код: sql 1. 2. 3. 4. 5.
IBExpert не поругался, запрос из процедуры работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 14:37 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
MarcelloНе совсем понятно, зачем в процедуре указывать character set utf8, если и поле utf8, и коннект utf8, но без этого set'а не работает. потому что DECLARE VARIABLE без явного указания чарсета берет для строк дефолтный чарсет базы, который в данном случае win1251. И туда никак не лезут некириллические символы. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 14:43 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
MarcelloНе совсем понятно, зачем в процедуре указывать character set utf8, если и поле utf8, и коннект utf8 если у базы дефолтный чарсет utf8 - то низачем не надо указывать. Сервер его автоматом укажет. А если ты вдруг его и указал, то по крайней мере IBE этот дефолтный чарсет не будет показывать, ибо ни к чему это. Например, процедура из багрепорта у меня в ИБЕ выглядит как Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
где чарсет yname и s ? нет его. он равен дефолтному для БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 14:44 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
Насколько правомочно и безопасно решение проблемы через апдейт? Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 14:45 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
MarcelloНасколько правомочно и безопасно решение проблемы через апдейт? неправомочно и небезопасно (а в 3.0 еще и запрещено). - апдейт системных таблиц не обновляет данные. То есть, данные останутся в старом чарсете, а у столбца будет новый. И не факт, что данные отконвертируются в новый формат правильное решение - добавить столбец с правильным чарсетом, отконвертировать данные. Или - пересоздать базу с правильным чарсетом всего (из скрипта), перелить данные из старой в новую. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 14:51 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
kdv, а если так: 1. Создать новое поле в UTF8. 2. Сделать апдейт. 3. Удалить старое поле. 4. Переименовать новое поле в старое имя. В приложении много мест, которые пишут данные в то поле. Хотелось бы минимизировать изменения, не тронув приложение. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 15:13 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
Marcello, так будет гемор с зависимостями. придется "деактивировать" в ibe процедуры и триггеры, которые ссылаются на этот столбец. База большая? Может быть проще целиком ее откопировать? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 15:22 |
|
Помогите с UNICODE_FSS
|
|||
---|---|---|---|
#18+
kdv, Процедура всего одна, триггеров на поле нет. Если других противопоказаний нет к этим 4 шагам, то так и сделаю. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2016, 15:45 |
|
|
start [/forum/topic.php?fid=40&msg=39189084&tid=1562299]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 262ms |
total: | 413ms |
0 / 0 |