Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
26.12.2016, 11:32
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
Добрый день Потребовалось сделать изменение в справочнике контактов, заменить один e-mail на другой. Написал вот такой блок: execute block as declare variable T_CLIENT integer; declare variable T_EMAIL_DATA integer; declare variable T_EMAIL varchar(255); begin for select CLIENT, EMAIL_DATA, replace(EMAIL, 'edi@domen.ru', 'edi@domen.com') from CLIENT_EMAIL_DATA into :T_CLIENT, T_EMAIL_DATA, T_EMAIL do begin update CLIENT_EMAIL_DATA set EMAIL = :T_EMAIL where CLIENT = :T_CLIENT and EMAIL_DATA = :T_EMAIL_DATA ; end end условие CLIENT = :T_CLIENT and EMAIL_DATA = :T_EMAIL_DATA из-за PK, он составной. При выполнении получаю : Arithmetic overflow or division by zero has occurred. arithmetic exception, numeric overflow, or string truncation. string right truncation. Что может быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 11:37
|
|||
---|---|---|---|
|
|||
Проблема с выполнением replace |
|||
#18+
Gallemar, а что одним UPDATE не судьба? Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:14
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
Симонов Денис, одним это как? Не понял, что ты мне предлагаешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:16
|
|||
---|---|---|---|
|
|||
Проблема с выполнением replace |
|||
#18+
Gallemar, я же выше написал. На фига сначала SELECT потом UPDATE? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:23
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
Я бы ещё просил - нафига там REPLACE и почему пустой WHERE. Если на первый вопрос ответ будет - "там несколько адресов в строке", то он же будет и ответом на вопрос собственно темы. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:32
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
hvlad, несколько адресов в строке, но с другими доменами. Т.е. 'edi@domen.ru' может быть один, может их быть ещё дополнительные. Where нет, т.к. нужно перебрать все строки в таблице. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:33
|
|||
---|---|---|---|
|
|||
Проблема с выполнением replace |
|||
#18+
Gallemar, да ну? А вот так Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:40
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
Симонов ДенисGallemar, да ну? А вот так Код: sql 1. 2. 3.
И вот так ошибка ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:47
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
Gallemar, А как тип у поля Код: plaintext
Код: plaintext
Может просто пытаешься впихнуть невпихуемое? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:50
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
fraks, точно!!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:51
|
|||
---|---|---|---|
|
|||
Проблема с выполнением replace |
|||
#18+
Gallemar, EMAIL какого типа. Может у тебя размерности не хватает? Или по дурости там CHAR в типе поля, тогда TRIM добавь. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:54
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
select client, char_length (email) from CLIENT_EMAIL_DATA WHERE EMAIL CONTAINING 'edi@domen.ru' - три по 255 символов, строка по 255 символов ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:56
|
|||
---|---|---|---|
|
|||
Проблема с выполнением replace |
|||
#18+
Gallemar, ну тогда увеличивай размер ... |
|||
:
Нравится:
Не нравится:
|
|||
|
26.12.2016, 12:58
|
|||
---|---|---|---|
Проблема с выполнением replace |
|||
#18+
Симонов ДенисGallemar, EMAIL какого типа. Может у тебя размерности не хватает? Или по дурости там CHAR в типе поля, тогда TRIM добавь. EMAIL T_STR_VALUE /* T_STR_VALUE = VARCHAR(255) */, ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=40&tablet=1&tid=1561781]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 157ms |
0 / 0 |