oracle建表语句

来源:互联网 发布:地区分布图 绘制软件 编辑:程序博客网 时间:2024/04/23 15:34

/
drop  table worktask_singlehistory
/
drop  table worktask_history
/
drop  table  worktask_summary
/
drop  table worktask_depaponsible
/
drop  table worktask_coding
/
drop  table worktask_type
/
drop  table worktask_content
/
drop table worktask_center
/
drop  sequence sq_worktask_singlehistory
/
drop  sequence sq_worktask_history
/
drop  sequence sq_worktask_summary
/
drop  sequence sq_worktask_depaponsible
/
drop  sequence sq_worktask_coding
/
drop  sequence sq_worktask_type
/
drop  sequence sq_worktask_content
/
drop  sequence sq_worktask_center
/
--创建表
create table worktask_content
(
   taskid integer primary key not null,--任务ID,主键,自动增长   
   theme varchar2(50), --任务主题 
   type integer, --依赖"任务类型表"ID 
  status integer, --1,进行中|2,完成|3,挂起|4,过期 
  source integer ,--0,会议|1,领导安排|2,个人新建|4,其它
 content varchar2(4000), --任务内容表 
   slave varchar2(200), --附件上传ID(多个附件id以分号隔开) 
   progress integer,--任务进度值 
   conversionschedule integer,--0,不转化|1,转化(日程记录任务开始时间,只占一天) 
   meetingid  integer,--会议ID
   scheduleid  integer,--依赖"日程表"的ID 
   scale integer,--0,一般|1,重要 (level被修改为scale)
  liableperson integer,-- --依赖"人员信息表"ID,只有一个 
   coadjutant  varchar2(100),--依赖"人员信息表"ID,可以多选,多个ID以分号分开 
   starttime  varchar2(10),--任务的开始日期 
   endtime  varchar2(10),--任务的结束日期 
   completiondate varchar2(10),--任务实际完成时间 
   beforestarttime  integer, --待办提醒提前天数
   starttype  integer,--0,邮件|1,短信 
   beforeendtime integer,  --延期提醒提前天数
   endtype  integer,--0,邮件|1,短信 
   revise integer,--0,否|1,是(表示有调整) 
   departmentstask integer,--0,不是(表示自己新建的任务)|1是 
   sontask  integer,--0,不是|1,是 
   taskcoding  varchar2(100),--由"任务编码规则表"自动生成,(新建任务时从编码表中取一个编号过来就行)
   createid        integer,--创建人id
 libdeparid      integer,--责任人所属部门id
   fathertaskid  integer--父任务ID   
)
/
--创建序列
create sequence sq_worktask_content
start with 1
increment by 1
minvalue 1
/
--创建表
create table worktask_type
(
 tasktypeid integer primary key not null,--任务类型ID,主键,自动增长
 tasktypename varchar2(100) ,       --类型名
 isuse integer,--0,不启用|1,启用
 mainid integer,--附件上传主目录id
 subid integer,--附件上传子目录id
 secid integer --附件上传分目录id
)
/
--创建序列
create sequence sq_worktask_type
start with 1
increment by 1
minvalue 1
/
insert into worktask_type (tasktypeid,tasktypename,isuse,mainid,subid,secid)
values(sq_worktask_type.nextval ,'行政','1','2','7','9')
/
insert into worktask_type (tasktypeid,tasktypename,isuse,mainid,subid,secid)
values(sq_worktask_type.nextval,'工商','1','4','7','9')
/
insert into worktask_type (tasktypeid,tasktypename,isuse,mainid,subid,secid)
values(sq_worktask_type.nextval,'IT','1','7','11','9')
/
--创建表
create table worktask_coding
(
  codingid integer primary key not null, --任务编码ID,主键,自动增长 
  tasktypeid  integer  ,  --任务编码id依赖任务类型ID 
  startalphabet varchar(40) ,--   
  grow integer --由1开始增长,每新建一个该类型的计划任务,就需要加1 
)
/
--创建序列
create sequence sq_worktask_coding
start with 1
increment by 1
minvalue 1
/
insert into worktask_coding (codingid,tasktypeid,startalphabet,grow)
values(sq_worktask_coding.nextval ,'1','asss','0')
/
insert into worktask_coding (codingid,tasktypeid,startalphabet,grow)
values(sq_worktask_coding.nextval ,'2','weer','0')
/
--创建表
create table worktask_depaponsible
(
  wid  integer primary key not null,--部门领导配置表ID,主键,自动增长 
  departmentid integer , --部门ID 
  departmentliableperson varchar2(150)--部门责任人ID,依赖"人员信息表",有多个  
)
/
--创建序列
create sequence sq_worktask_depaponsible
start with 1
increment by 1
minvalue 1
/
--创建表
create table worktask_summary

  summaryid integer primary key not null,--ID,主键,自动增长   
  summaryyear  integer,--用来区分当前是那一年的月(周)总结 
  summarymonth integer ,--第几月的总结    
  summaryweek integer,-- 第几周的总结 
  summaryperson integer,--依赖"人员信息表"ID 
  isdpsummary integer,--0,个人|1,部门 
  summarytype integer,-- 0,周总结|1,月总结 
  summarycontent varchar2(2000),--总结内容   
  importance varchar2(20),--记录周(月)报所产生的总结数据(4/20)    
  perfection varchar2(20), --记录周(月)报所产生的总结数据(4/20) 
  expired varchar2(20),--记录周(月)报所产生的总结数据(4/20)  
  ongoing varchar2(20),--记录周(月)报所产生的总结数据(4/20)
  hang varchar2(20),--记录周(月)报所产生的总结数据(4/20)   
  leader varchar2(20),--记录周(月)报所产生的总结数据(4/20)  
  otherssource varchar2(20)--记录周(月)报所产生的总结数据(4/20)  
)
/
--创建序列
create sequence sq_worktask_summary
start with 1
increment by 1
minvalue 1
/
--创建表
create table worktask_history
(
   worktaskhistoryid integer primary key not null,--ID,主键,自动增长   
   summaryid integer ,--依赖"周(月)总结表"ID
   taskid integer ,--任务ID,主键,自动增长   
    theme varchar2(50), --任务主题 
   type integer, --依赖"任务类型表"ID 
    status integer, --1,进行中|2,完成|3,挂起|4,过期 
    source integer ,--0,会议|1,领导安排|2,个人新建|4,其它
    content varchar2(4000), --任务内容表 
   slave varchar2(200), --附件上传ID(多个附件id以分号隔开) 
   progress integer,--任务进度值 
   conversionschedule integer,--0,不转化|1,转化(日程记录任务开始时间,只占一天) 
   meetingid  integer,--会议ID
   scheduleid  integer,--依赖"日程表"的ID 
   scale integer,--0,一般|1,重要 (level被修改为scale)
    liableperson integer,-- --依赖"人员信息表"ID,只有一个 
   coadjutant  varchar2(100),--依赖"人员信息表"ID,可以多选,多个ID以分号分开 
   starttime  varchar2(10),--任务的开始日期 
   endtime  varchar2(10),--任务的结束日期 
   completiondate varchar2(10),--任务实际完成时间 
   beforestarttime  integer, --待办提醒提前天数
   starttype  integer,--0,邮件|1,短信 
   beforeendtime integer,  --延期提醒提前天数
   endtype  integer,--0,邮件|1,短信 
   revise integer,--0,否|1,是(表示有调整) 
   departmentstask integer,--0,不是(表示自己新建的任务)|1是 
    sontask  integer,--0,不是|1,是 
   taskcoding  varchar2(100),--由"任务编码规则表"自动生成,(新建任务时从编码表中取一个编号过来就行)
   createid        integer,--创建人id
 libdeparid      integer,--责任人所属部门id
   fathertaskid  integer--父任务ID   
)
/
----创建序列
create sequence sq_worktask_history
start with 1
increment by 1
minvalue 1
/
--创建表
create table worktask_singlehistory
(
   singletaskid integer primary key not null, 
   taskid integer ,--任务ID,主键,自动增长   
    theme varchar2(50), --任务主题 
   type integer, --依赖"任务类型表"ID 
    status integer, --1,进行中|2,完成|3,挂起|4,过期 
    source integer ,--0,会议|1,领导安排|2,个人新建|4,其它
    content varchar2(4000), --任务内容表 
   slave varchar2(200), --附件上传ID(多个附件id以分号隔开) 
   progress integer,--任务进度值 
   conversionschedule integer,--0,不转化|1,转化(日程记录任务开始时间,只占一天) 
   meetingid  integer,--会议ID
   scheduleid  integer,--依赖"日程表"的ID 
   scale integer,--0,一般|1,重要 (level被修改为scale)
    liableperson integer,-- --依赖"人员信息表"ID,只有一个 
   coadjutant  varchar2(100),--依赖"人员信息表"ID,可以多选,多个ID以分号分开 
   starttime  varchar2(10),--任务的开始日期 
   endtime  varchar2(10),--任务的结束日期 
   completiondate varchar2(10),--任务实际完成时间 
   beforestarttime  integer, --待办提醒提前天数
   starttype  integer,--0,邮件|1,短信 
   beforeendtime integer,  --延期提醒提前天数
   endtype  integer,--0,邮件|1,短信 
   revise integer,--0,否|1,是(表示有调整) 
   departmentstask integer,--0,不是(表示自己新建的任务)|1是 
 sontask  integer,--0,不是|1,是 
   taskcoding  varchar2(100),--由"任务编码规则表"自动生成,(新建任务时从编码表中取一个编号过来就行)
   createid        integer,--创建人id
 libdeparid      integer,--责任人所属部门id
   fathertaskid integer--父任务ID       
)
/
--创建序列
create sequence sq_worktask_singlehistory
start with 1
increment by 1
minvalue 1
/
create table worktask_center
(
   cid integer  primary key not null,--ID,主键,自动增长
   ctaskid varchar2(500),  --依赖"计划任务表"ID
   cpersonid integer,  --人员id
   csonflag integer --标志位
)
/
--创建序列
create sequence sq_worktask_center
start with 1
increment by 1
minvalue 1
/
create or replace procedure worktask_content_Insert
(
         
           theme  varchar2,
           type  varchar2,
           status  varchar2,
           source  varchar2,
           content   varchar2,
           slave varchar2,
           progress varchar2,
           conversionschedule varchar2,
           meetingid varchar2,
           scheduleid varchar2,   
           scale varchar2,
           liableperson varchar2,
           coadjutant varchar2,
           starttime varchar2,
           endtime varchar2,
           completiondate varchar2,
           beforestarttime varchar2,
           starttype varchar2,
           beforeendtime varchar2,
           endtype varchar2,
           revise varchar2,
           departmentstask varchar2,
           sontask varchar2,
           taskcoding varchar2,
           createid varchar2,
           libdeparid varchar2,
           fathertaskid varchar2,     
           flag out integer,
           msg out varchar2,
           thecursor IN OUT cursor_define.weavercursor
 )
    as   
          maxtaskid varchar2(50);
    begin
     
         /*插入数据*/
         insert into worktask_content values(sq_worktask_content.nextval,theme, type ,status,source,content,slave,progress,conversionschedule,meetingid,scheduleid,scale,liableperson,coadjutant,starttime, endtime ,
         completiondate,beforestarttime,starttype,beforeendtime,endtype,revise,departmentstask,sontask,taskcoding,createid,libdeparid,fathertaskid);
        /*查出最大值*/
        select MAX(taskid) into maxtaskid  from worktask_content;
        dbms_output.put_line('mmd'||maxtaskid);
          /*修改数据*/
         if (sontask='1')
         then
             update worktask_content set fathertaskid=maxtaskid where taskid=maxtaskid;       
         end if;
          
     
     
        open thecursor for  select maxtaskid   from dual;                            
    end;
   

原创粉丝点击