当前位置:首页 » 操作系统 » 数据库大神

数据库大神

发布时间: 2022-08-01 03:12:39

数据库大神支支招,拜托拜托

右键数据库新建表就可以了,根据自己需求加字段,考虑表之间关联问题就OK了,这样问得不明不白也不知道怎样回答

㈡ 数据库大神请进,求助一句sql

最近写过一个类似的例子,跟你要求的几乎一样,你可以参考一下结构和思想,改一下表什么的就行,希望对你有帮助:

创建存储过程:P_UPDATE_ST_HACHUJ_ALL_G

输入参数:P$PO_DT date型

输出参数:P$RET number型

存储过程具体的操作

首先获取采购日期 (P$PO_DT)当月的采购信息(ST_HACHUJ_ALL)。

然后将取得的数据插入ST_HACHUJ_ALL_G表中 或者 更新 ST_HACHUJ_ALL_G表

(PO_NO在ST_HACHUJ_ALL_G中不存在,数据插入ST_HACHUJ_ALL_G,SEQ值= 0;

PO_NO在ST_HACHUJ_ALL_G中存在,更新ST_HACHUJ_ALL_G,SEQ值+ 1)。

CREATE OR REPLACE PROCEDURE P_UPDATE_ST_HACHUJ_ALL_G2

(P$PO_DT IN DATE,P$RET OUT NUMBER)

AS

V$CGXX ST_HACHUJ_ALL% ROWTYPE;

V$PO_NO NUMBER( 10);

CURSOR CUR_A

IS

SELECT T1.*

FROM ST_HACHUJ_ALL T1

WHERE TO_CHAR(T1.PO_DT,'YYYYMM' )=TO_CHAR(P$PO_DT,'YYYYMM');

BEGIN

P$RET:=0;

OPEN CUR_A;

LOOP

FETCH CUR_A INTO V$CGXX;

EXIT WHEN CUR_A%NOTFOUND;

SELECT COUNT (*)INTO V$PO_NO FROM ST_HACHUJ_ALL_G WHERE PO_NO=V$CGXX.PO_NO;

IF V$PO_NO>0 THEN

UPDATE ST_HACHUJ_ALL_G SET CO_CD=V$CGXX.CO_CD,REV=V$CGXX.REV,SPPL_CD=V$CGXX.SPPL_CD,PSPPL_CD=V$CGXX.PSPPL_CD,PO_DT=V$CGXX.PO_DT,LAST_DLV_DT=V$CGXX.LAST_DLV_DT,

PURC_DPT_CD=V$CGXX.PURC_DPT_CD,PURC_USR_CD=V$CGXX.PURC_USR_CD,PO_SHET_ISSU_COMPL_FLG=V$CGXX.PO_SHET_ISSU_COMPL_FLG,SCST_SHET_ISSU_COMPL_FLG=V$CGXX.SCST_SHET_ISSU_COMPL_FLG,ABR_PO_FLG=V$CGXX.ABR_PO_FLG,

INCTRMS_CD=V$CGXX.INCTRMS_CD,UKEBASHO_CD=V$CGXX.UKEBASHO_CD,PAY_COND_CD=V$CGXX.PAY_COND_CD,CUR_CD=V$CGXX.CUR_CD,XCNTRCT_FLG=V$CGXX.XCNTRCT_FLG,XRATE_DT=V$CGXX.XRATE_DT,XRATE=V$CGXX.XRATE,XCNTRCT_NO=V$CGXX.XCNTRCT_NO,

NOT_BILL_ACC_FLG=V$CGXX.NOT_BILL_ACC_FLG,TRD_TYP=V$CGXX.TRD_TYP,SUBCON_FLG=V$CGXX.SUBCON_FLG,PAY_COMPL_FLG=V$CGXX.PAY_COMPL_FLG,PAY_DT=V$CGXX.PAY_DT,IV_TGT_FLG=V$CGXX.IV_TGT_FLG,RMRKS=V$CGXX.RMRKS,APPROVAL_FLG=V$CGXX.APPROVAL_FLG,

APPROVAL_NO=V$CGXX.APPROVAL_NO,APPROVAL_SEQ=V$CGXX.APPROVAL_SEQ,APRV_TYP=V$CGXX.APRV_TYP,LAST_APV_USR_ID=V$CGXX.LAST_APV_USR_ID,APV_ABSTRACT=V$CGXX.APV_ABSTRACT,NEXT_OPR_FLG=V$CGXX.NEXT_OPR_FLG,PO_SHET_NO=V$CGXX.PO_SHET_NO,

INS_TS=V$CGXX.INS_TS,INS_USR_CD=V$CGXX.INS_USR_CD,UPD_CNTR=V$CGXX.UPD_CNTR,UPD_TS=V$CGXX.UPD_TS,UPD_USR_CD=V$CGXX.UPD_USR_CD,SEQ=SEQ+ 1

WHERE PO_NO=V$CGXX.PO_NO;

ELSE

INSERT INTO ST_HACHUJ_ALL_G (PO_NO,CO_CD,REV,SPPL_CD,PSPPL_CD,PO_DT,LAST_DLV_DT,PURC_DPT_CD,PURC_USR_CD,PO_SHET_ISSU_COMPL_FLG,SCST_SHET_ISSU_COMPL_FLG,ABR_PO_FLG,

INCTRMS_CD,UKEBASHO_CD,PAY_COND_CD,CUR_CD,XCNTRCT_FLG,XRATE_DT,XRATE,XCNTRCT_NO,NOT_BILL_ACC_FLG,TRD_TYP,SUBCON_FLG,

PAY_COMPL_FLG,PAY_DT,IV_TGT_FLG,RMRKS,APPROVAL_FLG,APPROVAL_NO,APPROVAL_SEQ,APRV_TYP,LAST_APV_USR_ID,APV_ABSTRACT,NEXT_OPR_FLG,

PO_SHET_NO,INS_TS,INS_USR_CD,UPD_CNTR,UPD_TS,UPD_USR_CD,SEQ)

VALUES (V$CGXX.PO_NO,V$CGXX.CO_CD,V$CGXX.REV,V$CGXX.SPPL_CD,V$CGXX.PSPPL_CD,V$CGXX.PO_DT,V$CGXX.LAST_DLV_DT,V$CGXX.PURC_DPT_CD,

V$CGXX.PURC_USR_CD,V$CGXX.PO_SHET_ISSU_COMPL_FLG,V$CGXX.SCST_SHET_ISSU_COMPL_FLG,V$CGXX.ABR_PO_FLG,V$CGXX.INCTRMS_CD,V$CGXX.UKEBASHO_CD,V$CGXX.PAY_COND_CD,

V$CGXX.CUR_CD,V$CGXX.XCNTRCT_FLG,V$CGXX.XRATE_DT,V$CGXX.XRATE,V$CGXX.XCNTRCT_NO,V$CGXX.NOT_BILL_ACC_FLG,V$CGXX.TRD_TYP,

V$CGXX.SUBCON_FLG,V$CGXX.PAY_COMPL_FLG,V$CGXX.PAY_DT,V$CGXX.IV_TGT_FLG,V$CGXX.RMRKS,V$CGXX.APPROVAL_FLG,V$CGXX.APPROVAL_NO,

V$CGXX.APPROVAL_SEQ,V$CGXX.APRV_TYP,V$CGXX.LAST_APV_USR_ID,V$CGXX.APV_ABSTRACT,V$CGXX.NEXT_OPR_FLG,V$CGXX.PO_SHET_NO,

V$CGXX.INS_TS,V$CGXX.INS_USR_CD,V$CGXX.UPD_CNTR,V$CGXX.UPD_TS,V$CGXX.UPD_USR_CD,0 );

END IF ;

END LOOP ;

CLOSE CUR_A;

COMMIT;

EXCEPTION

WHEN NO_DATA_FOUND THEN

DBMS_OUTPUT.PUT_LINE( '无值');

ROLLBACK;

WHEN OTHERS THEN

P$RET:= SQLCODE;

ROLLBACK;

END;

㈢ 请教数据库大神! 如何学习数据库

楼上的,你要答就好好答行不行
首先,不知道你《数据库理论》的水平到了什么程度,单纯从应用的意义来讲,理论那东西能便于你理解数据库,数据模型。话说,理论必须付诸于实践,所以建议你在你自己的电脑上装个数据库,能多做做练习,顺便也提高一下自己。
总得来说access你可以弄个玩一下,但是不太建议你用这个来学习,access一般是集成到微软office里的,所以就是以办公为主,真的要接触还是建议sqlserver,mysql,oracle这三个,毕竟用到的多,而且这几个语法相近,会了其中一个,学其他的有连贯性。

学这数据库其中,因为你已经了解了数据库理论,所以概念性的东西你就不用看了吧,基本都大同小异,最主要的是要学sql语句,因为sql语句贯通整个数据库,包括语句学顺了,你还要学的函数,存储过程,触发器等等,都是以sql语句为基础的。暂时,我就觉得,你自己下个数据库,sqlserver或者mysql都可以,自己在本地建点表,自己玩一下,多了解sql语句就可以,循序渐进的来吧

书,就是参考,记住语法什么的,因为我自己也没看过,所以就不给你推荐了哈

㈣ 重赏!!求数据库大神!!!

上网找个源代码,自己好好看下学习学习,花不了多少时间的,看不懂的地方就网络,现在做一做学会了毕业了好找工作,别一天到晚撸了。。。

㈤ 有没有数据库大神

createtable学生信息
(
学号char(4),
姓名varchar(20),
性别char(2)
);

createtable课程表
(
课程编码char(2),
课程名称varchar(20),
教师姓名varchar(20)
);

createtable成绩表
(
学号char(4),
课程编码char(2),
成绩int
);

insertinto学生信息values('1001','张三','男');
insertinto学生信息values('1002','李红梅','女');
insertinto学生信息values('1003','李四','男');

insertinto成绩表values('1001','1',83);
insertinto成绩表values('1002','1',86);
insertinto成绩表values('1003','2',92);
insertinto成绩表values('1004','2',90);
insertinto成绩表values('1005','3',84);
insertinto成绩表values('1006','3',80);

insertinto课程表values('1','计算机基础','刘大军');
insertinto课程表values('2','数据库原理','程友华');
insertinto课程表values('3','C语言','李军');

1、select*from学生信息;
2、select*from成绩表where学号='1002';
3、select*from学生信息where姓名like'李%';
4、select*from成绩表where成绩between85and90;
5、select*from成绩表where成绩>85;
6、selectmin(成绩)from成绩表;
7、selectsum(成绩)from成绩表;
8、select*from成绩表orderby成绩desc;
9、select课程名称,教师姓名from课程表;
10、selecta.学号,a.姓名,c.课程名称from学生信息a,成绩表b,课程表cwherea.学号=b.学号andb.课程编码=c.课程编码;
11、selecta.姓名,c.课程名称,b.成绩from学生信息a,成绩表b,课程表cwherea.学号=b.学号andb.课程编码=c.课程编码anda.学号='1003';
12、update学生信息set姓名='李四方'where学号='1003';

㈥ 求数据库大神帮忙啊啊啊啊急急急

5.drop database oldsales

㈦ SQL数据库大神

B,B,C,BD,B,BC,A,C,AB,D,B,C,D

㈧ 哪位数据库大神给我解释一下这个存储过程的编程这些语录是什么意思

1.存储过程首先从student表读取数据,把男生的数据找出来
2.然后把找出来的数据用insert 语句插入S表
3.最后再从S表读出数据,作为存储过程的输出

热点内容
oracle批量插入存储过程 发布:2025-01-18 10:49:57 浏览:41
分表存储查询 发布:2025-01-18 10:45:18 浏览:469
缺页算法 发布:2025-01-18 10:40:20 浏览:778
撕裂重罪6游戏电脑需要什么配置 发布:2025-01-18 10:37:23 浏览:444
python大小写忽略 发布:2025-01-18 10:36:13 浏览:441
如何给桌面的游戏加密码 发布:2025-01-18 10:09:34 浏览:231
魅族微信多开安卓怎么弄 发布:2025-01-18 10:04:33 浏览:448
网络设置里没有服务器是什么 发布:2025-01-18 09:52:19 浏览:343
阿里云esc服务器系统 发布:2025-01-18 09:49:16 浏览:790
你们家的无线网密码是多少 发布:2025-01-18 09:47:50 浏览:730