blob: 87908b65e3cf2a0f9aeb70e851fcf2db81023072 [file] [log] [blame]
--
-- Copyright (c) 2018, 2020 Oracle and/or its affiliates. All rights reserved.
--
-- This program and the accompanying materials are made available under the
-- terms of the Eclipse Public License v. 2.0 which is available at
-- http://www.eclipse.org/legal/epl-2.0,
-- or the Eclipse Distribution License v. 1.0 which is available at
-- http://www.eclipse.org/org/documents/edl-v10.php.
--
-- SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
--
CREATE TYPE XR_ADDRESS_TYPE AS OBJECT (
STREET VARCHAR2(40),
CITY VARCHAR2(40),
PROV VARCHAR2(40)
)|
CREATE TABLE XR_EMP_ADDR (
EMPNO NUMBER(4) NOT NULL,
FNAME VARCHAR2(40),
LNAME VARCHAR2(40),
ADDRESS XR_ADDRESS_TYPE,
PRIMARY KEY (EMPNO)
)|
CREATE PROCEDURE GET_EMPLOYEES_BY_PROV(X IN XR_ADDRESS_TYPE, Y OUT SYS_REFCURSOR) AS
BEGIN
OPEN Y FOR SELECT * FROM XR_EMP_ADDR xrea WHERE xrea.ADDRESS.PROV LIKE X.PROV;
END;
|
INSERT INTO XR_EMP_ADDR (EMPNO, FNAME, LNAME, ADDRESS) VALUES (1, 'Mike', 'Norman', XR_ADDRESS_TYPE('Pinetrail','Nepean','Ont'))|
INSERT INTO XR_EMP_ADDR (EMPNO, FNAME, LNAME, ADDRESS) VALUES (2, 'Rick', 'Barkhouse', XR_ADDRESS_TYPE('Davis Side Rd','Carleton Place','Ont'))|
INSERT INTO XR_EMP_ADDR (EMPNO, FNAME, LNAME, ADDRESS) VALUES (3, 'Merrick', 'Schincariol', XR_ADDRESS_TYPE('do','not','know'))|