Error IX000 on select for update
Posted in 2010
Hello,
i've have this problem:
When i execute this query:
EXEC SQL BEGIN WORK;
EXEC SQL SET LOCK MODE TO WAIT;
SELECT bdc_stato_ddt FROM informix.bolcli WHERE bdc_key_soc = '5' ANDbdc_key_tipo_bol = 'V' AND bdc_key_num_bol = 168582 FOR UPDATE
sometime i've receive an error with sqlstate = IX000.
The table bolcli is used from other concurrent query.
The query is generated from this esql code:
EXEC SQL BEGIN WORK;
EXEC SQL SET LOCK MODE TO WAIT;
sprintf(statement, "SELECT bdc_stato_ddt FROM informix.bolcli WHERE
bdc_key_soc = '%c' AND bdc_key_tipo_bol = 'V' AND bdc_key_num_bol = %d
FOR UPDATE", InfoDdtArt.CodSoc, InfoDdtArt.NumDdt);
memset(bdc_stato_ddt, '\\\\0', sizeof(bdc_stato_ddt));
EXEC SQL
PREPARE bolcli_state_query_upd
FROM :statement;
EXEC SQL
DECLARE cur_bolcli_state_query_upd CURSOR
FOR bolcli_state_query_upd;
EXEC SQL
OPEN cur_bolcli_state_query_upd;
EXEC SQL
FETCH cur_bolcli_state_query_upd
INTO :bdc_stato_ddt;
Can you help me ? Thanks in advance Francesco.