⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 create_addressbook2.sql

📁 介绍Oracle PL SQL编程
💻 SQL
字号:
/* * create_addressbook2.sql * Chapter 6, Oracle10g PL/SQL Programming * by Ron Hardman, Michael McLaughlin and Scott Urman * * This script builds objects for the example with standard Oracle data types * in all but one column. It uses a varray of VARCHAR2(30 CHAR) for the * ADDRESSES.STREET_ADDRESS column. */BEGIN  FOR i IN (SELECT null            FROM user_tables            WHERE table_name = 'INDIVIDUALS') LOOP    EXECUTE IMMEDIATE 'DROP TABLE individuals CASCADE CONSTRAINTS';  END LOOP;END;/CREATE TABLE individuals(individual_id            INTEGER             NOT NULL,first_name               VARCHAR2(30 CHAR)   NOT NULL,middle_initial           VARCHAR2(1 CHAR),last_name                VARCHAR2(30 CHAR)   NOT NULL,CONSTRAINT individual_pk PRIMARY KEY (individual_id));BEGIN  FOR i IN (SELECT null            FROM user_tables            WHERE table_name = 'ADDRESSES') LOOP    EXECUTE IMMEDIATE 'DROP TABLE addresses CASCADE CONSTRAINTS';  END LOOP;END;/BEGIN  -- Loop if a row is found and delete it.  FOR i IN (SELECT   null            FROM     user_types            WHERE    type_name = 'ADDRESS_VARRAY') LOOP    EXECUTE IMMEDIATE 'DROP TYPE address_varray';    COMMIT;  END LOOP;END;/CREATE OR REPLACE TYPE address_varray  AS VARRAY(3) OF VARCHAR2(30 CHAR);/CREATE TABLE addresses(address_id               INTEGER             NOT NULL,individual_id            INTEGER             NOT NULL,street_address           ADDRESS_VARRAY      NOT NULL,city                     VARCHAR2(20 CHAR)   NOT NULL,state                    VARCHAR2(20 CHAR)   NOT NULL,postal_code              VARCHAR2(20 CHAR)   NOT NULL,country_code             VARCHAR2(10 CHAR)   NOT NULL,CONSTRAINT address_pk    PRIMARY KEY (address_id),CONSTRAINT addr_indiv_fk FOREIGN KEY (individual_id) REFERENCES individuals  (individual_id));BEGIN  FOR i IN (SELECT null            FROM user_tables            WHERE table_name = 'TELEPHONES') LOOP    EXECUTE IMMEDIATE 'DROP TABLE telephones';  END LOOP;END;/CREATE TABLE telephones(telephone_id             INTEGER             NOT NULL,individual_id            INTEGER             NOT NULL,address_id               INTEGER,telephone_type           VARCHAR2(4 CHAR)    NOT NULL,telephone_number         VARCHAR2(20 CHAR)   NOT NULL,CONSTRAINT telephone_pk  PRIMARY KEY (telephone_id),CONSTRAINT tele_indiv_fk FOREIGN KEY (individual_id) REFERENCES individuals  (individual_id),CONSTRAINT tele_addr_fk  FOREIGN KEY (address_id) REFERENCES addresses    (address_id));

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -