powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Вставка текста с апострофом
25 сообщений из 80, страница 1 из 4
Вставка текста с апострофом
    #37315525
grav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, как выполнить такую вставку
INSERT INTO NAMEU (ID,NAMEP) values (8002982,'Общество с ограниченной ответственностью "Город' Ок"')
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37315538
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если через ISQL - удвоить апостроф. Через DSQL - использовать параметры.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37315552
grav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
программа на Delphi написана, компоненты IBX (TIBQuery).
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37315567
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значит - параметры!!!
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37315605
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для особо не желающих пользоваться параметрами можно применить символ ` вместо кавычки, тот который на кнопке с "ё". ;)
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37315625
grav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ivan_PisarevskyДля особо не желающих пользоваться параметрами можно применить символ ` вместо кавычки, тот который на кнопке с "ё". ;)
Работает :)
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37315778
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Двойная кавычка и в дельфях работает, есичо. Но лучше параметры.
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37315999
grav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
WildSeryДвойная кавычка и в дельфях работает, есичо. Но лучше параметры.
'Город+"'"+Ок'
Вот так что ли?

Параметры в смысле INSERT INTO NAMEU (ID,NAMEP) values (8002982, :NAMEP) ?
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37316370
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grav'Город+"'"+Ок'
Вот так что ли?'Город''Ок'.
(Два апострофа, не двойная кавычка).

gravПараметры в смысле INSERT INTO NAMEU (ID,NAMEP) values (8002982, :NAMEP) ?Да.
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37323004
grav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
WildSery,

не помогло использование параметров :(
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37323016
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gravWildSery,

не помогло использование параметров :( Точно-точно?
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #37323038
grav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ivan_Pisarevsky,

не точно, рано завопил :) извиняюсь
аналогичная ошибка в другой таблице, поправил
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Вставка текста с апострофом
    #39402169
Timujin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы не создавать новую тему, пишу сюда.
Столкнулся с тем, что в IBExpert команда insert выполняется, а в отладчике в делфи вижу ошибку.

Код: sql
1.
2.
3.
4.
5.
6.
7.
insert into sporg (id, CENA_SER3, KS, NDS_RS, NUMORG, FIO, NAMPOL, CENA_SER1, CENA_SER2, 
CENA_ZOL, NAC_OTHER, DOGOVOR_M, KONTAKT, MARK, DOGOVOR, OKPO, TIP, CODORG, PRZ, PINDEX, 
NAMUSER, DIRECTOR, TELEFON, BUX, DOM, POST_ADDR, BANK, RS, NAMORG, UL, EMAIL, GOROD, MFO, 
NSVID, NALOGN, DATCREATE, DATMOD) 
values (554, 0, '', 0, 618, '', '', 0, 0, 0, 0, '', '', 0, '', '', '', 554, 0, '', 'Дима 10.02.2017 10:43:12', '', '', '', '', '',
'Доп.офис `Лесной `ПАО `Банк `Санкт-Петербург`', '', 'Маркет', '', '', '', '', '', '', '2017-02-02 17:32:30.0000',
'2017-02-10 10:44:30.0000')



Опытным путем выяснил, что дело в том, что если в текстовом поле встречается НЕЧЕТНОЕ количество апострофов:

Доп.офис `Лесной `ПАО `Банк `Санкт-Петербург` - 5 штук

то выскакивает ошибка "XSQLDA index out of range", а если четное количество апострофов:

Доп.офис `Лесной ПАО `Банк `Санкт-Петербург` - 4 штуки,

то все работает без ошибок.
При этом, IBExpert'у все равно, сколько там у меня апострофов - все работает.
Что делать?
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402177
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Timujin,

т.е параметры использовать не хотим принципиально?
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402221
Timujin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там все сложно с параметрами. Дело в том, что это скрипт генерит другой скрипт для запуска его в самописном компиляторе в программе для экспорта/импорта данных между серверами
И в этом сгенеренном скрипте INSERT уже с реальными значениями полей для вставки новой записи.
А использование параметров для SQL в скрипте не предусмотрено
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402246
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Раз не желаешь "традиционной любви" с параметрами, занимайся "альтернативной" с экранированием кавычек.

насколько я понимаю проблема распарсить скрипт?, чтобы потом скормить его серверу, тогда как у эксперта с этим же скриптом проблем нет?
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402248
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Timujin!
You wrote on 10 февраля 2017 г. 12:50:12:

Timujin> При этом, IBExpert'у все равно, сколько там у меня апострофов - все работает.
> Что делать?использовать другие компоненты доступа вместо тех которые сейчас.

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402262
Timujin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_Pisarevsky,

Да, все верно. Сейчас этим и занимаюсь. Меняю апострофы/одинарные кавычки/двойные кавычки на сдвоенные одинарные кавычки. Вроде должно заработать. Отпишусь, вдруг поможет кому ;)
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402268
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SysUtils.QuotedStr()
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402270
Timujin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

Спасибо. Я в курсе. Ну тут немного по-другому. В скипте меняю кавычки, не в делфи
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402290
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Timujin!
You wrote on 10 февраля 2017 г. 13:54:38:

Timujin> В скипте меняю кавычкичем?

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402292
Timujin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

встроенной функцией скрипта
А она при выполнении скрипта вызывает
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
function RePlace(S:string;F:string;R:string): string;
var
  Tmp : integer;
begin
  Tmp := Pos(F,S);
  while Tmp > 0 do begin
    S := copy(S,1,Tmp-1)+R+copy(S,Tmp+Length(F),Length(S));
    Tmp := Pos(F, S);
  end;
  Result := S;
end;
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402316
Timujin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вобщем, все решилось заменой в текстовых полях кавычек на сдвоенные кавычки.
Но прикольно, получается, если в тексте присутствует НЕЧЕТНОЕ количество кавычек или апострофов, то пи попытке вставить это поле командой INSERT выскакивает ошибка XSQLDA index out of range
Баг?
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402328
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Timujin,

нет
...
Рейтинг: 0 / 0
Вставка текста с апострофом
    #39402336
Timujin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

А как могут влиять апострофы внутри текстового поля? А если там символы & - это тоже может как-то влиять на восприятие текста не как текста?
...
Рейтинг: 0 / 0
25 сообщений из 80, страница 1 из 4
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Вставка текста с апострофом
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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