Oracle建立表以及新增欄位備註
阿新 • • 發佈:2019-02-01
(一)檢測插入資訊的時候必須制定的欄位
STAT_CDE VARCHAR2(20) CHECK (STAT_CDE in ('S','C','A','E')),
表示只在S C A E
(二)設定主鍵以及非空
ID VARCHAR2(15) PRIMARY KEY NOT NULL,
(三)建立表
create table es_invc_hdr_temp( ID VARCHAR2(15) PRIMARY KEY NOT NULL, ORDER_KEY VARCHAR2(50) , ORDER_REF_NO VARCHAR2(50) , THIRD_PARTY_ORDER_ID VARCHAR2(100) , STAT_CDE VARCHAR2(20) CHECK (STAT_CDE in ('S','C','A','E')), REMARK VARCHAR2(240), CREATE_DTE DATE not null, UPDATE_DTE DATE );
(四)給表新增備註
COMMENT ON TABLE es_invc_hdr_temp IS '發票資訊臨時表'; COMMENT ON COLUMN es_invc_hdr_temp.ID IS '主鍵(自動生成)'; COMMENT ON COLUMN es_invc_hdr_temp.ORDER_KEY IS '訂單orderkey'; COMMENT ON COLUMN es_invc_hdr_temp.ORDER_REF_NO IS 'Eshop訂單編號'; COMMENT ON COLUMN es_invc_hdr_temp.THIRD_PARTY_ORDER_ID IS '第三方訂單編號'; COMMENT ON COLUMN es_invc_hdr_temp.STAT_CDE IS '發票狀態'; COMMENT ON COLUMN es_invc_hdr_temp.REMARK IS '備註'; COMMENT ON COLUMN es_invc_hdr_temp.CREATE_DTE IS '建立時間(不能為空)'; COMMENT ON COLUMN es_invc_hdr_temp.UPDATE_DTE IS '更新時間';
(五)查詢備註
SELECT
TABLE_NAME,
COLUMN_NAME,
COMMENTS
FROM
USER_COL_COMMENTS
WHERE
TABLE_NAME ='ES_INVC_HDR_TEMP';
執行結果如下:
(六)查看錶備註
SELECT
TABLE_NAME,
TABLE_TYPE,
COMMENTS
FROM
USER_TAB_COMMENTS
WHERE
TABLE_NAME = 'ES_INVC_HDR_TEMP';
執行結果如下:
轉載內容如下:作為筆記使用
1、建立序列:
create sequence seq_xx --建立序列名稱 increment by 1 --增長幅度 start with 1 --初始值 maxvalue 9999999999999999; --最大值
2、查詢序列:
select seq_xx.nextval from dual;
--或者select seq_xx.nextval from sys.dual;
select SEQ_ES_INVC_HDR_TEMP_ID.nextval from dual;--查詢索引最大值
select SEQ_ES_INVC_HDR_TEMP_ID.MAXVALUE from dual;
DROP SEQUENCE SEQ_ES_INVC_HDR_TEMP_ID;--刪除
每查詢一次,序列按自定義增長;
3、刪除序列:
DROP SEQUENCE seq_xx;
4、判斷序列是否存在,存在則刪除:
有些情況下使用不合理,刪除已有序列,再新建同名序列之後,重新使用該規則,可能會對已使用該序列資料造成影響。
加了“/”之後,可以在後面接其他的SQL語句;
declare
V_NUM number;
BEGIN
----多次刪除時,每次都將v_num設定成為0
V_NUM := 0;
----判斷序列 seq_name_1 是否存在(區分大小寫)
select count(0) into V_NUM from user_sequences where sequence_name = 'SEQ_XX';
----如果存在立即刪除
if V_NUM > 0 then
execute immediate 'DROP SEQUENCE SEQ_XX'';
end if;
END;
/
5、查詢序列大小寫問題
select * from user_sequences; --查詢使用者建的序列
我們發現欄位SEQUENCE_NAME的值裡面有剛才建立的SEQ_XX,這就解釋了為什麼判斷存在時候名字區分大小寫了
判斷序列是否存在引用https://blog.csdn.net/jay329106193/article/details/7637665