版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Oracle数据库管理与维护大作业
大作业
专业班级软件11XX班
姓名XXX
学号XXXX
完成日期2013-XX-XX
题目要求:
将下面的题目在Oraclellg中实现,并手写纸质版报告一份,包括所有
实现功能的SQL*PLUS命令或SQL或PL/SQL语句及运行结果。
新建一个数据库,命名为oraclezy,并完成以下功能:
记录某采油厂对油/水井实施作业时所消耗的成本(命名为作业表zyb)。
(作业:可懂得为对油/水井进行大修)
成本的消耗包括预算、结算、入账三个状态。
预算:采油队向治理部门提出作业申请,并经治理部门批准后,由治
理部门负责录入。
结算:某次作业施工终止后,由治理部门与施工单位共同核算各种成
本,由治理部门负责录入。
入账:结算后,财务部门将成本计入采油厂账目,由财务部门录入。
按照对以上题意的懂得,利用SQLPLUS,定义所需的数据表,包括
定义有关约束条件(主码、外码及其他约束)。
—Createtable
createtableZYB
(
单据号VARCHAR2(20)notnull,
预算单位VARCHAR2(20)notnull,
井号VARCHAR2(20)notnull,
预算金额NUMBER(IO)notnull,
预算人VARCHAR2(20)notnull,
预算日期DATEnotnull,
开工日期DATE,
完工日期DATE,
施工单位VARCHAR2(20),
施工内容VARCHAR2(20),
材料费NUMBER(IO),
人工费NUMBER(IO),
设备费NUMBER(IO),
其它费用NUMBER(IO),
结算金额NUMBER(IO),
结算人VARCHAR2(20),
结算日期DATE,
入账人VARCHAR2(20),
入账日期DATE,
入账金额NUMBER
)
tablespaceSYSTEM
pctfree10
pctused40
initrans1
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
—Create/Recreateprimary,uniqueandforeignkeyconstraints
altertableZYB
addconstraintDJNOprimarykey(单据号)
usingindex
tablespaceSYSTEM
pctfree10
initrans2
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
—Grant/Revokeobjectprivileges
grantselect,insert,update,delete,references,alter,indexonZYBtoLIY
AN;
—Createtable单位代码表
-由于表名用汉字表示操作时专门苦恼,就取表名的每个字的首字母
并冠以Z组成表名,如本例ZDWDMB
createtableZDWDMB
(
单位代码VARCHAR2(20)notnull,
单位名称VARCHAR2(20)notnull
)
tablespaceSYSTEM
pctfree10
pctused40
initrans1
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
-Create/Recreateprimary,uniqueandforeignkeyconstraints
altertableZDWDMB
addconstraintDWNAMEunique(单位名称)
usingindex
tablespaceSYSTEM
pctfree10
initrans2
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
—Grant/Revokeobjectprivileges
grantselect,insert,update,delete,references,alter,indexonZDWDMBt
oLIYAN;
—Createtable油水井表
createtableZYSJB
(
井号VARCHAR2(20)notnull,
井别VARCHAR2(20)notnull,
单位代码VARCHAR2(20)notnull
)
tablespaceSYSTEM
pctfree10
pctused40
initrans1
maxtrans255
storage
initial64K
nextIM
minextents1
maxextentsunlimited
);
—Create/Recreateprimary,uniqueandforeignkeyconstraints
altertableZYSJB
addconstraintJNOprimarykey(井号)
usingindex
tablespaceSYSTEM
pctfree10
initrans2
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
—Grant/Revokeobjectprivileges
grantselect,insert,update,delete,references,alter,indexonZYSJBtoLI
YAN;
—Createtable
-施工单位表
createtableZSGDWB
(
施工单位名称VARCHAR2(20)notnull,
施工单位号VARCHAR2(20)notnull
tablespaceSYSTEM
pctfree10
pctused40
initrans1
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
—Create/Recreateprimary,uniqueandforeignkeyconstraints
altertableZSGDWB
addconstraintSGNOprimarykey(施工单位号)
usingindex
tablespaceSYSTEM
pctfree10
initrans2
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
—Grant/Revokeobjectprivileges
grantselect,insert,update,delete,references,alter,indexonZSGDWBto
LIYAN;
-物码表
—Createtable
createtableZWMB
(
物码VARCHAR2(20)notnull,
名称规格VARCHAR2(20)notnull,
计量单位VARCHAR2(20)notnull
)
tablespaceSYSTEM
pctfree10
pctused40
initrans1
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
-Create/Recreateprimary,uniqueandforeignkeyconstraints
altertableZWMB
addconstraintWNOprimarykey(物码)
usingindex
tablespaceSYSTEM
pctfree10
initrans2
maxtrans255
storage
initial64K
nextIM
minextents1
maxextentsunlimited
);
—Grant/Revokeobjectprivileges
grantselect,insert,update,delete,references,alter,indexZWMBto
IYAN;
-材料费表
—Createtable
createtableZCLFB
(
作业项目编号VARCHAR2(20)notnull,
物码VARCHAR2(20)notnull,
消耗数量NUMBERnotnull,
单价NUMBERnotnull
)
tablespaceSYSTEM
pctfree10
pctused40
initrans1
maxtrans255
storage
(
initial64K
nextIM
minextents1
maxextentsunlimited
);
利用SQLPLUS,录入以下有关的基础数据:
单位代码表:1122采油厂
112201采油一矿112202采油二矿
112201001采油一矿1队112201002采油一矿2队112201003
采油一矿3队
112202001采油二矿1队112202002采油二矿2队
油水井表:(yOOl油112201001)(y002油1122010
01)
(yOO3油112201002)(sOOl水112201002)
(y004油112201003)(s002水112202001)
(sOO3水112202001)(y005油112202002)
施工单位表:作业公司作业一队作业公司作业二队作业公司作
业三队
物码表:wmOOl材料一吨wm002材料二米wm003材料三
桶wm004材料四袋
ZYB:
〃某作业项目编号zy2009001
//开工日期:2009-5-4完工日期:2009-5-25施工单位:作业公司作
业一队施工内容:堵漏
材料费:7000.00(其中材料一:2000.00材料二:2000.00材料三:
2000.00材料四:1000.00)
人工费:2500.00设备费:1000.00其它费用:1400.00结算金额:
11900.00
〃某作业项目编号zy2009002
//开工日期:2009-5-4完工日期:2009-5-23施工单位:作业公司作
业二队施工内容:检泵
材料费:6000.00(其中材料一:2000.00材料二:2000.00材料三:
2000.00)〃隐含单价和数量
人工费:1500.00设备费:1000.00其它费用2400.00结算金额:
10900.00
〃某作业项目编号zy2009003
〃开工日期:2009-5-6完工日期:2009-5-23施工单位:作业公司作
业二队施工内容:检泵
材料费:6500.00(其中材料一:2000.00材料二:2000.00材料三:
2500.00)
人工费:2000.00设备费:500.00其它费用:1400.00结算金额:1
0400.00
〃某作业项目编号zy2009004
//开工日期:2009-5-4完工日期:2009-5-24施工单位:作业公司作
业三队施工内容:防砂
材料费:6000.00(其中材料一:2000.00材料二:2000.00材料四:
2000.00)
人工费:2000.00设备费:1000.00其它费用:1600.00结算金额:
10600.00
〃某作业项目编号zy2009005
//开工日期:2009-5-4完工日期:2009-5-28施工单位:作业公司作
业三队施工内容:防砂
材料费:7000.00(其中材料一:2000.00材料二:2000.00材料四:
3000.00)
人工费:1000.00设备费:2000.00其它费用:1300.00结算金额:
11300.00
//(未入账!!!)
那个地点只列举一个导出的数据表:
"施工单位名称","施工单位号","ROWID"
”作业公司作业一队"JzyOlOOlAAAR7YAABAAAVChAAA"
”作业公司作业二队","zy01002","AAAR7YAABAAAVChAAB"
”作业公司作业三^","zy01003","AAAR7YAABAAAVChAAC"
利用SQLPLUS查询以下数据:
采油一矿2队2009-5-1到2009-5-28有哪些项目处于结算状态,列出相
应材料费明细。结算状态有值,不用管入账是否有值。
SQL>select*fromzclfbwhere作业项目编号in
2(select单据号fromzybwhere预算单位='采油一矿2队,
3and结算日期〉=to_date(2009-5-r,'yyyy-mm-dcT)
4*and结算日期<=1。_(^0(2009-5-287丫丫丫丫-111111-(1(1))
作业项目编号物码消耗数量
单价
zy2009002wmOOl200
10
zy2009002wm002200
10
zy2009002wm003200
10
zy2009003wmOOl200
10
zy2009003wm002200
10
zy2009003wm003250
10
已选择6行。
已用时刻:00:00:00.31
采油一矿2队2009-5-1到2009-5-28总的入账金额。
SQL>selectSUM(入帐金额)fromzyb
2where预算单位=,采油一矿2队,
3and入账日期>=TO_DATE('2009-5-1YYYY-MM-DD')
4*AND入账日期<=TO_DATE(2009-5-28','YYYY-MM-DD)
SUM(入帐金额)
21300
采油一矿2009-5-1到2009-5-28总的入账金额。
SQL>selectsum(入帐金额)fromzyb
2where预算单位like'采油一矿%,
3and入账日期〉=to_date(2009-5-l?yyyy-mm-dcT)
4*and入账日期<=1。_(^0(2009-5-28',〜丫丫丫-111111-£1(1)
SUM(入帐金额)
33200
有哪些人员参与了入账操作。
SQL>selectdistinct入账人fromzyb;
入账人
王五
赵六
2009-5-1到2009-5-28有结算未入帐的项目。
项目-单据号
SQL>SELECT单据号FROMZYB
2WHERE结算日期<=TO_DATE(2009528?YYYY-MM-DD,)
3AND结算日期〉=TO_DATE(2009-5-l?YYYY-MM-DD)
4*AND入账人isNULL
5AND结算人isnotNULL
单据号
zy2009005
列出采油一矿2队的所有项目,按入账金额从高到低排列o
项目-项目号
SQL>select单据号,入账金额fromzyb
2where预算单位=,采油一矿2队,
3*orderby入账金额desc
单据号入账金额
zy200900210900
zy200900310400
列出有哪些单位实施了项目,并运算各单位所有项目结算金额总和。
SQL>SELECT施工单位,sum(结算金额)FROMZYB
2GROUPBY施工单位;
施工单位SUM(结算金额)
作业公司作业一队11900
作业公司作业二队21300
作业公司作业三队21900
已用时刻:00:00:00.04
找出消耗了材料三且消耗超过了2000元的项目,列出相应明细(利用子
查询)。〃谁的明细?-该项目的
SQL>select*fromzybwhere单据号in
2(select作业项目编号fromzclfbwhere(消耗数量*单价)>2000
3*and物码='wm003')
单据号预算单位井号
预算金额预算人预算日期开工日期
完工日期施工单位施工内容材
料费人工费设备费其它费用结算金额结算人
结算日期入账人入账日期入账
金额
zy2009003采油一矿2队sOOl
10500张三01-5月-0906-5月-09
23-5月-09作业公司作业二队检泵65
002100500140010500李四
26-5月-09王五28-5月-0910400
已用时刻:00:00:00.28
作业公司二队参与了哪些项目。
SQL>select单据号,施工单位FROMZYB
2*WHERE施工单位=,作业公司作业二队,
单据号施工单位
zy2009002作业公司作业二队
zy2009003作业公司作业二队
已用时刻:00:00:00.01
作业公司一队和二队参与了哪些项目(利用union)。〃集合查询
SQL>select单据号FROMZYB
2WHERE施工单位㈢作业公司作业一队,
3UNION
4select单据号FROMZYB
5*WHERE施工单位士作业公司作业二队,
单据号
zy2009001
zy2009002
zy2009003
已用时刻:00:00:00.01
利用SQLPLUS完成以下操作:
将编号为zy2009005的项目的人工费和结算金额增加100元。
-增加前的数据
SQL>select单据号,人工费,结算金额fromzyb;
单据号人工费结算金额
zy2009001250011900
zy2009002150010900
zy2009003200010400
zy2009004200010600
zy2009005100011300
已用时刻:00:00:00.00
SQL>updatezyb
2*set人工费=人工费+100,结算金额=结算金额+100
已更新5行。
已用时刻:00:00:00.14
-操作后的数据
SQL>select单据号,人工费,结算金额fromzyb;
单据号人工费结算金额
zy2009001260012000
zy2009002160011000
zy2009003210010500
zy2009004210010700
zy2009005110011400
已用时刻:00:00:00.00
删除已结算未入帐的项目。(可结合查询5)
-删除前的数据
SQL>select单据号fromzyb;
单据号
zy2009001
zy2009002
zy2009003
zy2009004
zy2009005
zy2009006
SQL>deletefromzybwhere单据号=
2(select单据号fromzyb
3*where结算金额isnotnulland入账金额isnull)
已删除1行。
已用时刻:00:00:00.01
-删除后结果
SQL>select单据号fromzyb;
单据号
zy2009001
zy2009002
zy2009003
zy2009004
zy2009006
已用时刻:00:00:00.00
利用SQLPLUS进行如下事务处理练习(把下列五条语句作为一个事
务处理,只有五条语句全部成功执行才做提交,并给出提示信息;否则就
做回滚处理,并给出提示信息):
insertintozybvalues('zy2009006','112202002';y00510000,<H'07-0
1-2009',
,07-04-2009','07-25-2009';^业公司作业一队?堵漏(7000,2500,1000,140
0;李四','07-26-2009',11900,五','07-28-2009',11900)
insertintoclfbvalues('zy2009006','wm00r,200,10)
insertintoclfbvalues('zy2009006','wm002',200,10)
insertintoclfbvalues('zy2009006','wm003',200,10)
insertintoclfbvalues('zy2009006','wm004',100,10)
CLFB--材料费表
SQL>insertintozybvalues('zy2009006','112202002';y00510000,<H
2to_date('2009-07-0r,'yyyy-mm-dd'),to_date('2009-07-04','yyyy-mm-
dd'),
3to_date(2009-07-25;yyyy-mm-ddb作业公司作业一队?堵漏;
47000,2500,1000,1400,11900,'李K',to_dateC2009-07-26','yyyy-mm-d
d'),
5*'i5',to_dateC2009-07-287yyyy-mm-dd'),11900)
已创建1行。
已用时刻:00:00:00.29
SQL>savepointsi;
储存点已创建。
已用时刻:00:00:00.00
SQL>insertintozclfbvalues('zy20090067wm00r,200,10);
已创建1行。
已用时刻:00:00:00.00
SQL>savepoints2;
储存点已创建。
已用时刻:00:00:00.00
SQL>insertintozclfbvalues('zy20090067wm002',200,10);
已创建1行。
已用时刻:00:00:00.00
SQL>savepoints3;
储存点已创建。
已用时刻:00:00:00.00
SQL>insertintozclfbvalues('zy2009006','wm003',200,10);
已创建1行。
已用时刻:00:00:00.00
SQL>savepoints4;
储存点已创建。
已用时刻:00:00:00.01
SQL>insertintozclfbvalues('zy2009006','wm004',100,10);
已创建1行。
已用时刻:00:00:00.00
SQL>select*fromzybwhere单据号='zy2009006';--检验是否成功
单据号预算单位井号
预算金额预算人预算日期开工日期
完工日期施工单位施工内容材
料费人工费设备费其它费用结算金额结算人
结算日期入账人入账日期入账
金额
zy2009006112202002y005
10000张三01-7月-0904-7月-09
25-7月-09作业公司作业一队堵漏70
0025001000140011900李四
26-7月-09王五28-7月-0911900
已用时刻:00:00:00.26
SQL>select*fromzclfbwhere作业项目编号='zy2009006';--检验
是否成功
作业项目编号物码消耗数量
单价
zy2009006wmOOl200
10
zy2009006wm002200
10
zy2009006wm003200
10
zy2009006wm004100
10
已用时刻:00:00:00.01
SQL>commit;
提交完成。
已用时刻:00:00:00.00
利用SQLPLUS进行如下游标练习:
定义一个游标,用于存放作业表的全部行数据。并打印以下表头和各
行数据。
表头:单据号消耗单位井号预算金额预算人预算日期开工日期
完工日期施工单位施工内容材料费人工费设备费其它费用结算金
额结算人结算日期入账金额入账人入账日期
执行以上所定义的游标,查看是否能正确输出结果。
SQL>begin
2forzybm(select*fromzyb)
3loop
4dbms_output.put(单据号:[zyb.单据号');
5dbms_output.put(消耗单位:|||zyb.预算单位(');
6dbms_output.put('井号:'||zyb.井号/');
7dbms_output.putC预算金额:zyb.预算金额『");
9dbms_output.putC预算日期:zyb.预算日期/,);
10dbms_output.putC开工日期:zyb.开工日期(,);
11dbms_output.put(,完工日期:zyb.完工日期『,);
12dbms_output.putC施工单位:zyb.施工单位(,);
13dbms_output.putC施工内容:'||zyb.施工内容');
14dbms_output.putC材料费:|||zyb.材料费(');
15dbms_output.putC人工费:'llzyb.人工费『');
16dbms_output.putC设备费:丁zyb.设备费(');
17dbms_output.put('其它费用:,||zyb.其它费用『,);
18dbms_output.put('结算金额:'||zyb.结算金额『');
20dbms_output.put。结算日期:,||zyb.结算日期『,);
21dbms_output.put('入账金额:zyb.入账金额');
23dbms_output.put_line('入账日期:丁zyb.入账日期[');
24endloop;
25*end;
SQL>/
PL/SQL过程已成功完成。
已用时刻:00:00:00.03
利用SQLPLUS进行如下视图练习:
利用SQLPLUS定义一个视图,用于储存作业表和材料费表的全部列。
利用SQLPLUS查询该视图,可任意选择查询条件,构造出2个查询。】
SQL>createviewzyb_zclfb_viewas
2select*fromzyb,zclfb
3*wherezyb.单据号=zclfb.作业项目编号
视图已创建。
已用时刻:00:00:00.32
SQL>select*fromzyb_zclfb_view;
单据号预算单位井号
预算金额预算人预算日期开工日期
完工日期施工单位施工内容材
料费人工费设备费其它费用结算金额结算人
结算日期入账人入账日期入账
金额作业项目编号物码消耗数量
单价
zy2009001采油一矿1队yOOl
10000张三04-5月-0904-5月-09
25-5月-09作业公司作业一队堵漏70
0026001000140012000李四
26-5月-09王五28-5月-0911900
zy2009001wmOOl2001
0
zy2009006112202002y005
10000张三01-7月-0904-7月-09
25-7月-09作业公司作业一队堵漏70
0025001000140011900李四
26-7月-09王五28-7月-0911900
zy2009006wmOOl2001
0
zy2009006112202002y005
10000张三01-7月-0904-7月-09
25-7月-09作业公司作业一队堵漏70
0025001000140011900李四
26-7月-09王五28-7月-0911900
zy2009006wm0022001
0
zy2009006112202002y005
10000张三01-7月-0904-7月-09
25-7月-09作业公司作业一队堵漏70
0025001000140011900李四
26-7月-09王五28-7月-0911900
zy2009006wm0032001
0
zy2009006112202002y005
10000张三01-7月-0904-7月-09
25-7月-09作业公司作业一队堵漏70
0025001000140011900李四
26-7月-09王五28-7月-0911900
zy2009006wm0041001
0
zy2009001采油一矿1队yOOl
10000张三04-5月-0904-5月-09
25-5月-09作业公司作业一队堵漏70
0026001000140012000李四
26-5月-09王五28-5月-0911900
zy2009001wm0022001
0
zy2009001采油一矿1队yOOl
10000张三04-5月-0904-5月-09
25-5月-09作业公司作业一队堵漏70
0026001000140012000李四
26-5月-09王五28-5月-0911900
zy2009001wm0032001
0
zy2009001采油一矿1队yOOl
10000张三04-5月-0904-5月-09
25-5月-09作业公司作业一队堵漏70
0026001000140012000李四
26-5月-09王五28-5月-0911900
zy2009001wm0041001
0
zy2009002采油一矿2队y003
11000张三01-5月-0904-5月-09
23-5月-09作业公司作业二队检泵60
0016001000240011000李四
26-5月-王五28-5月-0910900
zy2009002wmOOl2001
0
zy2009002采油一矿2队y003
11000张三01-5月-0904-5月-09
23-5月-09作业公司作业二队检泵60
0016001000240011000李四
26-5月-0<王五28-5月-0910900
zy2009002wm0022001
0
zy2009002采油一矿2队y003
11000张三01-5月-0904-5月-09
23-5月-09作业公司作业二队检泵60
00160010002400111000李四
26-5月-09王五28-5月-0910900
zy2009002wm0032001
0
单据号预算单位井号
预算金额预算人预算日期开工日期
完工日期施工单位施工内容材
料费人工费设备费其它费用结算金额结算人
结算日期入账人入账日期入账
金额作业项目编号物码消耗数量
单价
zy2009003采油一矿2队sOOl
10500张三01-5月-0906-5月-09
23-5月-09作业公司作业二队检泵65
002100500140010500李四
26-5月-09王五28-5月-0910400
zy2009003wmOOl2001
0
zy2009003采油一矿2队sOOl
10500张三01-5月-0906-5月-09
23-5月-09作业公司作业二队检泵65
002100500140010500李四
26-5月-09王五28-5月-0910400
zy2009003wm0022001
0
zy2009003采油一矿2队sOOl
10500张三01-5月-0906-5月-09
23-5月-09作业公司作业二队检泵65
002100500140010500李四
26-5月-09王五28-5月-0910400
zy2009003wm0032501
0
zy2009004采油二矿1队s002
12000张三01-5月-0904-5月-09
24-5月-09作业公司作业三队防砂60
0021001000160010700李四
26-5月-09赵六28-5月-0910600
zy2009004wmOOl2001
0
zy2009004采油二矿1队s002
12000张三01-5月-0904-5月-09
24-5月-09作业公司作业三队防砂60
0021001000160010700李四
26-5月-09赵六28-5月-0910600
zy2009004wm0022001
zy2009004采油二矿1队s002
12000张三01-5月-0904-5月-09
24-5月-09作业公司作业三队防砂60
0021001000160010700李四
26-5月-0(赵六28-5月-0910600
zy2009004wm0042001
0
已选择17行。
已用时刻:00:00:00.23
SQL>select单据号,预算单位,预算金额,物码,(消耗数量*单价)
2*fromzyb_zclfb_view
单据号预算单位预算金额物码
(消耗数量*单价)
zy2009001采油一矿1队10000wmOOl
2000
zy200900611220200210000wmOOl
2000
zy200900611220200210000wm002
2000
zy200900611220200210000wm003
2000
zy200900611220200210000wm004
1000
zy2009001米油一矿1队
10000wm002
2000
zy2009001米油一矿队
110000wm003
2000
zy2009001采油一矿1队10000wm004
1000
zy2009002采油一矿2队11000wmOOl
2000
zy2009002采油一矿2队11000wm002
2000
zy2009002采油一矿2队11000wm003
2000
单据号预算单位预算金额物码
(消耗数量*单价)
zy2009003采油一矿2队10500wmOOl
2000
zy2009003采油一矿2队10500wm002
2000
zy2009003采油一矿2队10500wm003
2500
zy2009004采油二矿1队12000wmOOl
2000
zy2009004采油二矿1队12000wm002
2000
zy2009004采油二矿1队12000wm004
2000
已选择17行。
已用时刻:00:00:00.04
利用SQLPLUS定义一个储备过程,要求完成以下功能:
生成某单位(单位能够是采油厂或采油矿或采油队)某段时刻内的成本
运行情形(输入参数:单位代码起始日期终止日期)
输出格式***单位**时刻一**时刻成本运行情形
预算金额结算金额入账金额未结算金额未入账金额
其中未结算金额=预算金额-结算金额未入账金额=结算金额-入账金
额
(格式是自己弄的,老师的没想出来…)
SQL>CREATEORREPLACEPROCEDUREDW_CBYX(
2DWNO_PARAMINvarchar2,QSRQ_PARAMINDATE,JSRQ_P
ARAMINDATE,
3预算金额_PARAMoutnumber,结算金额_PARAMoutnumber,
4入账金额_PARAMoutnumber,
5未结算金额_PARAMoutnumber,未入账金额_PARAMoutnum
ber)is
6BEGIN
7selectsum(预算金额),sum(结算金额),sum(入账金额),sum(预算金
额-结算金额),
8sum(结算金额-入账金额)
9into预算金额_PARAM,结算金额_PARAM,入账金额_PARAM,未
结算金额_PARAM,
10未入账金额_PARAM
11fromzybwhere
12结算日期〉=qsrq_param
13and结算日期<=jsrq_param
14and
15预算单位in
16(select单位名称fromzdwdmbwhere单位代码likeDWNO_P
ARAM);
17*endDW_CBYX;
过程已创建。
已用时刻:00:00:00.03
SQL>execdw_cbyx(l1220100l,to_date('2009-5-r,'yyyy-mm-dd'),to_date
(2009-5-28?yyyy-mm-dd):预算金额,:结算金额,:入账金额,:未结算金额,:未
入账金额);
PL/SQL过程已成功完成。
已用时刻:00:00:00.01
SQL>print预算金额结算金额入账金额未结算金额未入账金额
预算金额
10000
结算金额
12000
入账金额
11900
未结算金额
-2000
未入账金额
100
SQL>execdw_cbyx(112201002,to_date('2009-5-r,'yyyy-nim-dd'),to_dat
e(2009-5-28?yyyy-mm-dd):预算金额:结算金额,:入账金额,:未结算金额,:未
入账金额);
PL/SQL过程已成功完成。
已用时刻:00:00:00.01
SQL>print预算金额结算金额入账金额未结算金额未入账金额
预算金额
21500
结算金额
21500
入账金额
21300
未结算金额
0
未入账金额
200
SQL>execdw_cbyx(ll2202001,to_date('2009-5-r,'yyyy-mm-dd'),to_dat
e(2009528;yyyy-mm-dd):预算金额,:结算金额,:入账金额,:未结算金额,:未
入账金额);
PL/SQL过程已成功完成。
已用时刻:00:00:00.01
SQL>print预算金额结算金额入账金额未结算金额未入账金额
预算金额
12000
结算金额
10700
入账金额
10600
未结算金额
1300
未入账金额
100
利用SQLPLUS针对zyb定义三个触发器,分别完成以下功能:
对zyb插入一行数据时,自动运算并插入结算金额字段(结算金额=材
料费+人工费+设备费+其它费用)
SQL>createorreplacetriggerinsert_op
2afterinsert
3onzyb
4begin
5updatezyb
6set结算金额=(材料费+人工费+设备费+其它费用);
7*endinsert_op;
触发器已创建
已用时刻:00:00:00.03
SQL>insertintozyb(单据号,预算单位,井号,预算金额,预算人,预算日
期,材料费,人工费,设备费,其它费用)
2valuesCz
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《生命的延续》课件
- 2024年旅行社高级导游聘用合同模板版
- 2024年生物制药研发合作合同条款
- 2024年度居间合同纠纷诉讼风险评估报告3篇
- 2024年新股转协议及综合合作框架
- 《高血压基础知识》课件
- 2024年版防水补漏注浆施工合同
- 焊接工艺课件-焊条电弧焊V形坡口板对接仰焊
- 贵州省遵义市红花岗区2024-2025学年九年级上学期期末联考英语试题
- 2024年农业机械设备借用与农业技术推广合同3篇
- 2023届高考英语一轮复习 语法填空:人物传记类 专项练习10篇有答案
- 年5万吨含锡废料综合回收再生利用项目环评报告
- 危险性较大的分部分项工程施工前安全生产条件核查表
- 2023年小学英语六年级英语英语王杯竞赛试题
- 2023年四年级语文竞赛小学四年级语文竞赛试题双版
- GB/T 22900-2022科学技术研究项目评价通则
- JJG 882-2019压力变送器
- GM/T 0003.2-2012SM2椭圆曲线公钥密码算法第2部分:数字签名算法
- GB/T 7286.2-1987金属与非金属材料光谱法向发射率试验方法
- GB/T 35414-2017高原地区室内空间弥散供氧(氧调)要求
- GB/T 28426-2021铁路大型养路机械钢轨探伤车
评论
0/150
提交评论