Oracle PL/SQL DDL

來源:互聯網
上載者:User
Table, Field:Create Table TABLE_NAME(
    COL1 Integer Default 4 Not Null,
    Constraint PK_NAME Primary Key(COL1));
Alter Table TABLE_NAME Add(
    COL2 Decimal Default 0 Null,
    COL3 Varchar2(20) Default ' ' Null,
    COL4 Integer Not Null);
Alter Table TABLE_NAME Modify (
    COL3 Varchar2(70) Default ' ' Not Null,
    COL4 Decimal Default 0);
--注意:修改列時如果原來的列已經為Not Null,Modify語句中就只能給Null或者不寫是否允許 Null的屬性
Alter Table TABLE_NAME Drop (COL3, COL4);
Drop Table TABLE_NAME;  Index, Constraint:Create Index IX_NAME_1 On TABLE_NAME(COL4, COL1)
      Tablespace ERP Storage (Initial 20K Next 20k Pctincrease 75);
Drop Index IX_NAME_1;
Alter Table TABLE_NAME Drop Primary Key;
Alter Table TABLE_NAME Add Constraint PK_NAME Primary Key (COL1);
Alter Table TABLE_NAME Add Constraint UK_NAME Unique (COL4, COL3);
Alter Table TABLE_NAME Drop Constraint UK_NAME; 
--or Alter Table TABLE_NAME Drop Unique (COL4, COL3);  Sequence:Create Sequence SEQ_TABLE_NAME Minvalue 1 Maxvalue 999999999999 
      Start With 1 Increment By 1 Cache 20;
Alter Sequence SEQ_TABLE_NAME Increment By 5;
Drop Sequence SEQ_TABLE_NAME;  Sample Trigger:Create Or Replace Trigger TR4CRM_SYS_ORG
After Insert Or Delete On SYS_ORG --After Update On SYS_ORG
Referencing Old As Old New As New
For Each Row
Declare
   v_count Number := 0;
Begin
    If Inserting Then --insert command
      Select Count(*) Into v_count From SYS_ORG_VIEW Where CHILD_ID=:New.ORG_ID;
      If :New.PARENT_ID>0 Then
              --sql code
      End If;
      If :New.ORG_IS_VIRTUAL Is Null Or :New.ORG_IS_VIRTUAL=0 Then
          --sql code
      End If;
    End If;
  
  If Updating And :New.ORG_DEL_FLAG<>:Old.ORG_DEL_FLAG Then --update command
       --sql code
  End If;

    If Deleting Then --delete command
          Delete From SYS_ORG_VIEW Where PARENT_ID=:New.ORG_ID Or CHILD_ID=:New.ORG_ID;
    End If;
End;禁用triggeralter table PRD_ITEM disable all triggers;alter table PRD_ITEM enable all triggers;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.