|
|
|
ЗАПРОС с ПАРАМЕТРОМ
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Объясните несведущему - мучаюсь уже сутки. Есть запрос, выполняемый через SQLEXEC в FoxPro (БД - MSSQL): Код: plaintext 1. 2. 3. 4. Внимание - вопрос: там, где отмечена цифра 5, если вставить параметр ?_cat (по значению они равнозначны), который есть ранее в запросе, запрос не выполняется, ошибка. Но... стоит заменить _cat на константу и... о-ла-ла, все работает. Что не так?!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 03:05 |
|
||
|
ЗАПРОС с ПАРАМЕТРОМ
|
|||
|---|---|---|---|
|
#18+
Поставить Aerror() после SQLEXEC и ее результат в студию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 09:21 |
|
||
|
ЗАПРОС с ПАРАМЕТРОМ
|
|||
|---|---|---|---|
|
#18+
А она отвечает: "Тип данных аргумента float недопустим для аргумента 3 функции substring Да, но _cat - numeric (integer в БД) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 18:29 |
|
||
|
ЗАПРОС с ПАРАМЕТРОМ
|
|||
|---|---|---|---|
|
#18+
Запросы с параметрами, передаваемыми с помошью знака вопроса, драйвером ODBC преобразовываются в вызов процедуры sp_sqlexecute с передачей ей текста запроса, описаний и значений параметров, участвующих в запросе. При этом числа конвертятся в тип float. Решение: составляйте строку запроса co значением переменной _cat и ее отправляйте на обработку. Примерно так: +"MAX(curr_value))))) - "+transform(_cat)+")" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2007, 18:40 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34855478&tid=1588674]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 186ms |
| total: | 302ms |

| 0 / 0 |
