Я конвертирую хранимую процедуру в некотором программном обеспечении, которое поддерживаю, из SQL Server SQL в Informix SQL, и проблем много.
По сути, я конвертирую каждый раздел построчно, покаконвертируем все это.
У меня есть следующее CREATE PROCEDURE
:
CREATE PROCEDURE ifxdbase:dc_buildSP (WorkID INT, CompNo smallint)
CREATE TEMP TABLE Items
(
Code smallint,
Qty int,
Total int
);
INSERT INTO Items
SELECT
tblDetails.code,
tblDetails.quantity,
tblHead.quantity
FROM
tblHead
INNER JOIN tblDetails ON (tblDetails.compno = tblDetails.compno AND tblDetails.id_num = tblHead.id_num)
WHERE tblHead.compno = CompNo AND tblHead.id_num = WorkID;
--ORDER BY tblDetails.code;
DROP TABLE Items;
END PROCEDURE
Как есть, это работает нормально, но когда я раскомментирую строку --ORDER BY tblDetails.seqno;
(и удаляюточка с запятой из предыдущей строки) Я получаю сообщение об ошибке «-201 A синтаксическая ошибка произошла».
В основном tblHead
- это серия заголовков заказов, а tblDetails
- это таблица деталей каждого из них.заказы.Выбор и объединение данных работает нормально, попытка упорядочить их не удалась.
Порядок должен работать с чем угодно из исходного SELECT, IIRC, поэтому я не вижу, что может быть не так, здесь ...