Я не уверен, с какой проблемой вы сталкиваетесь. Используя Informix 12.10.FC6 (время для обновления - а затем немного) в Ubuntu 18.04, я могу запустить это без ошибок:
DROP TABLE IF EXISTS user_data;
CREATE TABLE user_data
(
region CHAR(2) NOT NULL,
country CHAR(2) NOT NULL,
cntry CHAR(2) NOT NULL,
usr_name VARCHAR(25) NOT NULL
);
-- PHASE2:
BEGIN WORK;
--create a temp table
CREATE TEMP TABLE IF NOT EXISTS temp_users (
reg_id CHAR(2),
cntry CHAR(2),
name VARCHAR(25)
);
--insert to temp table
INSERT INTO temp_users(reg_id, cntry, name)
SELECT region, country, usr_name FROM user_data WHERE cntry = 'AU';
-- more work with the temp table below..
COMMIT;
Я не знаю, почему в вашей таблице user_data
есть столбцы country
и cntry
;это не очевидно.
Попробуйте создать временную базу данных (базу данных с новым именем, от которой вы скоро избавитесь), а затем запустите сценарий, показанный для нее, с помощью DB-Access. Это должно работать, создавая такую трассировку (я использовал stores
в качестве базы данных и файл xyz.sql
для хранения скрипта):
$ dbaccess stores xyz
Database selected.
Table dropped.
Table created.
Started transaction.
Temporary table created.
0 row(s) inserted.
Data committed.
Database closed.
$
Что вы получаете?