sunduk4
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Считываю из файла данные в блоб-поле - Код: char blb_select[1000] = "update table set blobfield = ? where id = 1"; isc_create_blob2(status, &DB, &trans, &blob_handle, blob_id, 0, NULL ); left_count = lposition - fposition; while (left_count > 0) { if (left_count < 16384) { read_count = left_count; left_count = 0; } else { read_count = 16384; left_count = left_count - 16384; } fread(blob_segment, sizeof(char), read_count, bstream); isc_put_segment(status, &blob_handle, read_count, blob_segment); if (status[0] == 1 &&status[1]) { ERREXIT(status, 1); } }; blb_sqlda = (XSQLDA *) malloc(XSQLDA_LENGTH (1)); blb_sqlda->sqln = 1; blb_sqlda->sqld = 1; blb_sqlda->version = 1; blb_sqlda->sqlvar[0].sqldata = (char *) &blob_id; blb_sqlda->sqlvar[0].sqltype = SQL_BLOB; blb_sqlda->sqlvar[0].sqllen = sizeof(ISC_QUAD); if (isc_dsql_execute_immediate(status, &DB, &trans, 0, blb_select, 1, blb_sqlda)) { ERREXIT(status, 1) } | данные из файла читаются, а на isc_dsql_execute_immediate получаю Invalid blob handle. Подскажите, пожалуйста, что не так. |