ошибка Firebird, неправильная строка при компиляции процедуры - PullRequest
0 голосов
/ 23 февраля 2012

Простой пример: я получаю ошибку искаженной строки.Как это решить?Я использую Firebird 2.5, набор символов отсутствует в базе данных.

set term ^ ;


create or alter procedure test4
as
declare s varchar(20);
begin

s='öööööáé';
END^

set term ; ^

Я пробовал это в FlameRobin и с isql, тот же результат.

Я использовал набор имен win1250.Нет эффекта.

Ответы [ 2 ]

1 голос
/ 04 марта 2012

Я не советую вам использовать charset none в любой базе данных, и это также верно для Firebird.

Даже если предполагается, что он конвертируется с Flamerobin , я советую вам воссоздать вашу базу данных с нужным вам набором символов и «перекачать» ваши данные из вашей старой базы данных в новую базу данных с помощью закодированного набора символов. , Инструмент, подобный fbclone , может сделать эту работу.

Другая интересная ссылка о Firebird и кодировке здесь

0 голосов
/ 30 апреля 2018

что случилось со мной;

я использовал ems sql manger firebird lite.

моя информация о БД похожа на эту кодировку по умолчанию: utf8 сопоставление по умолчанию: unicode_ci_ai

у моей кодировки соединения нет;и я попытался вставить

INSERT INTO CARI  (CARI_ID, CARI_ADI, CARI_KOD    )
VALUES ('8', 'FİLA UNİCODE_TEXT', 'FİŞA' );

, затем я получил искаженную строку.

вкратце:

Я повторно подключаюсь к БД с настройкойCHARTSET то же самое с текущей базой данных Charset (которая была utf 8) .yesSSS !!я без проблем вставил «Юникод, содержащий оператор вставки».


note : слишком мало помощи с firebird.давайте улучшаться вместе.

...