|
|
|
Проблема с тильдами в SQL- выражении для функции Modify
|
|||
|---|---|---|---|
|
#18+
Проблема в следующем. Если в SQL-выражении встречается тильда, функция Modify датавиндоу выдает синтаксическую ошибку. SQL-выражение вида: SELECT pireference FROM v_pi WHERE (Upper(ltrim(rtrim(pireference))) = ~'020 ~ 00ЉBERWEISUNGSAUFTRA~') Выражение для функции Modify соответственно: dw.Modify ("Datawindow.Table.Select='" + lsSelect + "'"), где lsSelect - переменная, содержащая вышеприведенное SQL-выражение. Если в этом выражении убрать выделенную тильду, все проходит. Может кто сталкивался с подобной проблемой - буду рад любой рекомендации по ее решению :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2006, 18:11 |
|
||
|
Проблема с тильдами в SQL- выражении для функции Modify
|
|||
|---|---|---|---|
|
#18+
~0 это недопустимая escape последовательность (внутри этого конкретного modify производится подстановка escape) В данном случае нужно писать ~~ вместо ~ везде внутри строкового литерала запроса. Т.е. Код: plaintext 1. 2. Там же надо заменять ' на ~'. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2006, 19:29 |
|
||
|
Проблема с тильдами в SQL- выражении для функции Modify
|
|||
|---|---|---|---|
|
#18+
а чтобы не экранировать тильды пользуй ф-ю SetSQLSelect ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2006, 11:49 |
|
||
|
Проблема с тильдами в SQL- выражении для функции Modify
|
|||
|---|---|---|---|
|
#18+
Вот вспомнилось: http://pbdj.sys-con.com/read/42553.htm Why TABLE.SELECT is Preferred over SetSQLSelect Table.Select is generally considered to have several advantages over the SetSQLSelect function: It's much faster. PowerBuilder does not validate the statement until retrieval. The data source of the DataWindow can be changed, e.g., from SQL SELECT to stored procedures. Table.Select allows the use of none or any of the arguments defined for the DataWindow object in the SQL Select clause. In SetSQLSelect, arguments that were not previously defined cannot be used. От себя добавлю. После SetSQLSelect DW может перестать быть обновляемым, если новый запрос необновляемый с точки зрения PB (например основан на view, или на нескольких таблицах) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 14:27 |
|
||
|
|

start [/forum/topic.php?fid=15&msg=33476052&tid=1337945]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
46ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 326ms |

| 0 / 0 |
