2. Используем параметр
UPDATE tset SET memo=:memo WHERE id=2
Параметр = 'мир'
Как именно в блоб присваиваешь строку на клиенте?
--
Дмитрий Еманов
IBExpert запрвшивает параметр перед выполнением SQL запроса.
Я думаю передается ANSI строка .
В 2.0.1 все работает нормально.
Lвася
Шутко такой?
Дык.
Коваленко Дмитрий.
Dmitry Yemanov пишет:
Как именно в блоб присваиваешь строку на клиенте?
А передавать-то нужно через стандартную UDF
UPDATE table SET blobfield = STRING2BLOB(:blobfiled) WHERE id = :id
тогда записывается именно в UNICODE_FSS, а иначе как ANSI
Dmitry Yemanov wrote:
Подтверждаю. Завтра отпишу диагноз.
В общем, малой кровью это не лечится :-(
--
Дмитрий Еманов
Containing при работе с текстовым BLOB выдает ошибку Arithmetic
overflow ...если
в поле содержатся национальные символы , charset - win1251 или
UNICODE_FSS.
FB-2.1.0.15152
vk wrote:
Containing при работе с текстовым BLOB выдает ошибку Arithmetic
overflow ...если
в поле содержатся национальные символы , charset - win1251 или
UNICODE_FSS.
У меня нет ошибок. Показывай, как делаешь.
--
Дмитрий Еманов
Похоже ошибка возникает тогда когда слово начинаеися с маленькой буквы
CREATE TABLE TEST (
IDINTEGER,
MEMO BLOB SUB_TYPE 1 SEGMENT SIZE 80 CHARACTER SET UNICODE_FSS
);
Добавляю две записи
1. id =1 , memo= 'monitor'
2. id=2 , memo = ' вася' - ошибка, если написать правильно
Приношу свои извенения, предыдущий пример не совсем правильный так
как
использовался IBExpert.
Новый пример -
Создаем базу. Создаем процедуру с использованием русских букв.
Например-
CREATE PROCEDURE ptest RETURNS (retval char(6))
AS
BEGIN
/* вася */
retval= 'вася';
SUSPEND;
END ^
И
vk wrote:
И получаем ошибку.
Подтверждаю. Завтра отпишу диагноз.
--
Дмитрий Еманов
Hello, VK!
vk wrote:
Новый пример -
уточни, с каким чарсетом создается база,
с каким чарсетом ты подключаешься при создании процедуры,
передается-ли в процедуре константа вася в юникоде,
и с каким чарсетом ты подключаешься при выполнении процедуры.
--
Dmitri Kouzmenko, www.ibase.ru, (495)
Dmitri Kuzmenko wrote:
уточни, с каким чарсетом создается база,
с каким чарсетом ты подключаешься при создании процедуры,
и с каким чарсетом ты подключаешься при выполнении процедуры.
пофиг
передается-ли в процедуре константа вася в юникоде,
как ты себе это представляешь?
--
Дмитрий
Kovalenko Dmitry wrote:
Lвася
Шутко такой? Вася у нас в тексте процедуры. Покажи код вызова API для
CREATE PROCEDURE так, чтобы текст был в юникоде.
--
Дмитрий Еманов
Еще одно наблюдение.
Тест проводился в IBExpert. FB 2.1 SS win32.
База - dafault characterset win1251.
Подключение - win1251
CREATE TABLE TEST (
IDINTEGER,
MEMO BLOB SUB_TYPE 1 SEGMENT SIZE 80 CHARACTER SET UNICODE_FSS
);
В таблице две записи.
1. UPDATE tset SET memo='мир' WHERE
13 matches
Mail list logo