Все,
У меня есть следующее описание пакета:
CREATE OR REPLACE PACKAGE ashish.PKG_Customer AUTHID CURRENT_USER AS
TYPE cursorType IS REF CURSOR;
PROCEDURE CreateCustomerTable;
PROCEDURE SelectCustomers(o_ResultSet OUT cursorType);
END PKG_Customer;
и вот тело пакета:
CREATE OR REPLACE PACKAGE BODY ashish.PKG_Customer AS
PROCEDURE CreateCustomerTable AS
sQuery VARCHAR2(1000);
BEGIN
sQuery := 'CREATE TABLE tblCustomer2(
CustomerID INTEGER PRIMARY KEY,
FirstName VARCHAR2(50),
LastName VARCHAR2(50),
City VARCHAR2(200),
State_Province VARCHAR2(100),
PostalCode VARCHAR2(25)
)';
EXECUTE IMMEDIATE sQuery;
END CreateCustomerTable;
PROCEDURE SelectCustomers(o_ResultSet OUT cursorType) AS
BEGIN
OPEN o_ResultSet FOR
SELECT CustomerID,
FirstName,
LastName,
City,
State_Province,
PostalCode
FROM tblCustomer;
END SelectCustomers;
END PKG_Customer;
Проблема, с которой я сталкиваюсь, заключается в том, чтомой пакет не скомпилируется, потому что таблица в настоящее время не существует.Конечно, я должен иметь возможность заранее создавать хранимые процедуры для таблиц, которые в настоящее время не существуют в Oracle, верно?Я что-то здесь не так делаю?
Версия сервера - Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64-бит.
Спасибо!
-Ashish