2015-04-13 2 views
0

У нас есть база данных Informix с хранимой процедурой с именем LicenseTotals() У нас есть более быстрая версия для запуска программного обеспечения с использованием SQL Lite. Однако нижеприведенный запрос вызывает ошибку при использовании SQL Lite.Вызов Informix Сохраненная процедура из SQL Lite

SELECT name,value FROM TABLE(FUNCTION LicenseTotals()) (pkid,name,value,UserValue,DeviceValue) 

Ниже приведена ошибка;

System.Data.SQLite.SQLiteException (0x80004005): 
SQL logic error or missing database near "TABLE": syntax error 
+0

Поддерживает ли [SQLite] (http://www.sqlite.org/lang_select.html) поддержку документа для этой нотации? Вероятно, нет (я не вижу его в связанном документе), следовательно, сообщение об ошибке. Вам нужно будет определить, что такое эквивалентная нотация SQLite, если таковая имеется. Это не автоматически означает, что вы можете использовать результаты функции как таблицу в SQLite. –

+0

На самом деле, глядя на [язык запросов, понимаемый SQLite] (http://www.sqlite.org/lang.html), я не вижу поддержки определенных пользователем функций; Я не изучал поддержку API, но вам может быть не повезло. –

ответ

0

SQLite поддерживает (скалярные) user-defined functions и virtual tables, но не хранимые процедуры.

Вы должны были это заметить, если попытка создания хранимой процедуры не удалась.

Смежные вопросы