首页 > 代码库 > Oracle 语法
Oracle 语法
1.建表
CREATE TABLE COMPARE_KPPO_HEADER
CREATE TABLE COMPARE_KPPO_HEADER
(
COMPARE_HD_ID NUMBER,--primary key not null,为主键的意思
PPO_NO VARCHAR2(20),
PPO_REV_NO VARCHAR2(20),
CREATE_DATE DATE,
CREATE_USER_ID VARCHAR2(20),
COMPARE_TYPE VARCHAR2(20),
ORDER_TYPE VARCHAR2(10)
);
2.修改表
ALTER TABLE COMPARE_KPPO_HEADER
ADD COLUMNS (ORDER_TYPE VARCHAR2(10),
ORDER_NAME VARCHAR2(15));
ALTER TABLE COMPARE_KPPO_HEADER
MIDIFY COLUMS(ORDER_TYPE VARCHAR2(20));
ALTER TABLE COMPARE_KPPO_HEADER
DELETE COLUMNS ORDER_TYPE;
2.修改表
ALTER TABLE COMPARE_KPPO_HEADER
ADD COLUMNS (ORDER_TYPE VARCHAR2(10),
ORDER_NAME VARCHAR2(15));
ALTER TABLE COMPARE_KPPO_HEADER
MIDIFY COLUMS(ORDER_TYPE VARCHAR2(20));
ALTER TABLE COMPARE_KPPO_HEADER
DELETE COLUMNS ORDER_TYPE;
ALTER TABLE table_name RENAME TO new_table_name;--修改表名
3.建立自增键
CREATE SEQUENCE ESCMUSER.COMPARE_KPPO_HEADER_SEQ;
--完整语法
CREATE SEQUENCE seqTest
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXvalue -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10; --设置缓存cache个序列,如果系统down掉了或者其它情况将会导致序列不连续,也可以设置为---------NOCACHE
4.获取自增键的值,并将该值赋给变量SELECT COMPARE_KPPO_HEADER_SEQ.NEXTVAL INTO v_COMPARE_HD_ID FROM DUAL;
5.建立视图
CREATE OR REPLACE VIEW V_TEMP AS
SELECT DISTINCT PH.PPO_NO
FROM PPO_HD PH
6.if else语句
IF v_ORDER_TYPE = ‘KNBU‘ THEN
........
ELSIF v_ORDER_TYPE=‘KNSP‘ THEN--注意此处是ELSIF,少了一个E
................
END IF;
--以下内容为Package
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
..................................
END;
FROM PPO_HD PH
6.if else语句
IF v_ORDER_TYPE = ‘KNBU‘ THEN
........
ELSIF v_ORDER_TYPE=‘KNSP‘ THEN--注意此处是ELSIF,少了一个E
................
END IF;
--以下内容为Package
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
CREATE OR REPLACE PACKAGE ESCMUSER.KPPO_COMPARE_PACK
IS
--生成PPO对比数据
PROCEDURE p_gen_compare_kppo(v_PPO_NO VARCHAR2,v_PPO_REV_NO NUMBER,v_ORDER_TYPE VARCHAR2, v_UserID VARCHAR2,v_OPERATION_TYPE VARCHAR2);
END KPPO_COMPARE_PACK;
--定义包体
/ CREATE OR REPLACE PACKAGE BODY ESCMUSER.KPPO_COMPARE_PACK
IS
PROCEDURE p_gen_compare_kppo_main(v_COMPARE_HD_ID NUMBER,v_PPO_NO VARCHAR2);
PROCEDURE p_gen_compare_kppo_labdip(v_COMPARE_HD_ID NUMBER,v_PPO_NO VARCHAR2,v_ORDER_TYPE VARCHAR2);
PROCEDURE p_gen_compare_kppo(v_PPO_NO VARCHAR2,v_PPO_REV_NO NUMBER,v_ORDER_TYPE VARCHAR2, v_UserID VARCHAR2,v_OPERATION_TYPE VARCHAR2)
IS
v_COMPARE_HD_ID NUMBER;
BEGIN ..................................
END;
Oracle 语法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。