以下は、オラクルストアの手順です。
ここで私が渡しているテーブル名は動的です。
PROCEDURE LG_UTIL_GET_TABLE
(
p_table_name VARCHAR,
pageNumber Number,
pageSize Number,
p_cursor OUT types.cursor_type
)
AS
BEGIN
OPEN p_cursor FOR
SELECT * FROM
SELECT a.*, rownum r__
FROM
(
'Select * from ' || p_table_name
) a
WHERE rownum < ((pageNumber * pageSize) + 1 )
WHERE r__ >= (((pageNumber-1) * pageSize) + 1) ;
END ;
しかし、ストア プロシージャはコンパイルされていません。
この行のせいで、
Select * from ' || p_table_name
代わりに、このクエリを使用する場合
Select * from Customer
、コンパイルされます
ただし、テーブル名は動的にする必要があります。
この問題を解決するのを手伝ってください。