|
|
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
Привет всем, Помогите пожалуйста с отправкой SQL к интербес серверу и главное с получением от него ответа в виде записей которые были выбраны при запросе stat=isc_attach_database(status_vector, dbname.Length(), dbname.c_str(), &dbhandle, dpb_len, &dpb[0]); stat = isc_start_transaction(status_vector, &tr_handle, 1, &dbhandle, 0, 0); char *str ="SELECT * FROM tst"; sel_sqlda = (XSQLDA ISC_FAR *) malloc(XSQLDA_LENGTH(1)); sel_sqlda->sqln = 1; sel_sqlda->version = 1; stat = isc_dsql_allocate_statement(status_vector,&dbhandle,&stmt_handle); stat = isc_dsql_prepare(status_vector,&tr_handle,&stmt_handle,0,str,1,sel_sqlda); sel_sqlda->sqlvar[0].sqldata = orig_name; sel_sqlda->sqlvar[0].sqltype = SQL_TEXT; sel_sqlda->sqlvar[0].sqllen = CURRENLEN; stat = isc_dsql_execute(status_vector,&tr_handle,&stmt_handle,1,NULL); while ((retcode = isc_dsql_fetch(status_vector,&stmt_handle,1,sel_sqlda)) == 0) { orig_name[CURRENLEN] = '\0'; } Этот код производит выборку но Fetchит только 18 записей и благополучно их обрабатыевает, а при 19 Acces violation at adress **** read of adress *****(адрес тотже), если строк меньше 19 отрабатывется корректно. Заранее благодарен al@cps.nnoov.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 09:07:43 |
|
||
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
а что есть orig_name? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 09:23:23 |
|
||
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
char orig_name[CURRENLEN + 1]; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 09:35:18 |
|
||
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
забыл #define CURRENLEN 10 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 09:37:27 |
|
||
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
ну мета код таблицы тогда покажи еще, что ли ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 09:52:39 |
|
||
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
/* Extract Table TST */ /* Table: TST, Owner: SYSDBA */ CREATE TABLE TST (SOME_TEXT CHAR(1)); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 10:02:51 |
|
||
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 10:09:08 |
|
||
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
Нет. Я опустил некоторые незнацительные вещи такие как загрузку библиотеки, получение указателей на функции и описание переменных, останое привел как есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 10:12:41 |
|
||
|
Помогите с fetch и isc_dsql_allocate_statement
|
|||
|---|---|---|---|
|
#18+
а почему у тебя retcode на ноль проверяется? ведь eof это 100 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 10:59:06 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32521465&tid=1578634]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
188ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
67ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 529ms |

| 0 / 0 |
