① PLSQL编程查询问题 实验内容 使用Scott用户登录YGGL数据库,基于Scott用户的em
DECLARE
V_EMPNO EMP.EMPNO%TYPE:=&v;
V_DEPTNO EMP.DEPTNO%TYPE;
BEGIN
DBMS_OUTPUT.PUT_LINE('V_EMPNO='||V_EMPNO);
SELECT DEPTNO INTO V_DEPTNO FROM EMP E WHERE E.EMPNO =V_EMPNO;
UPDATE EMP E
SET E.SAL = E.SAL + (CASE E.DEPTNO
WHEN 10 THEN
100
WHEN 20 THEN
200
WHEN 30 THEN
300
ELSE
0
END)
WHERE E.EMPNO = V_EMPNO;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('NO DATA FOUND');
END;
DECLARE
V_ENAME EMP.ENAME%TYPE:='SMITH';
V_COUNT NUMBER:=0;
V_SAL EMP.SAL%TYPE;
V_EMPNO EMP.EMPNO%TYPE;
CURSOR C IS SELECT EMPNO,SAL FROM EMP WHERE ENAME=V_ENAME;
BEGIN
SELECT COUNT(1) INTO V_COUNT FROM EMP E WHERE E.ENAME =V_ENAME;
IF V_COUNT=1 THEN
SELECT E.SAL INTO V_SAL FROM EMP E WHERE E.ENAME =V_ENAME;
DBMS_OUTPUT.PUT_LINE('SAL='||V_SAL);
ELSE
FOR V IN C LOOP
DBMS_OUTPUT.PUT_LINE('EMPNO='||V.EMPNO||',SAL='||V.SAL);
END LOOP;
END IF;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('NO DATA FOUND');
END;
② qt数据库应用编程实验,实现了哪些功能
大致只要知道以上例子就OK了。一般而言会将db变量作为全局变量或者数据成员,当需要访问的时候就获取一个query就可以了。
另外,要实现所提到的功能,要好好看看QString、QStringList,这两玩意主要是临时存放数据、分割数据等作用,另外,要看QFile、QDir、QFileInfo、QTextStream,这四个主要用来读取文本数据。看看QVector或者QList等来存放读出来的数据。
另外,要实现这玩意,SQL的语句不要求精通,但是基本的Create、Insert、Select、Delete等操作要准确无误。否则出错了QT是看不出来的。QT不会检测SQL的准确性的。
再另外,在QT的编程中,C++和类都很重要,所以还是得看看。
③ 数据库实验要SQL语言编写的
-- Create table
create table Student
(
S_No varchar2(20),
S_Name varchar2(20) not null,
S_Sex varchar2(2) default '男',
S_Birthday date
)
;
-- Add comments to the table
comment on table Student
is '学生';
-- Create/Recreate primary, unique and foreign key constraints
alter table Student
add constraint Pri_S_No primary key (S_NO);
-- Create table
create table Course
(
C_No varchar2(20),
C_Name varchar2(40),
Grade number(4,1)
)
;
-- Add comments to the table
comment on table Course
is '课程';
-- Add comments to the columns
comment on column Course.Grade
is '分数';
-- Create/Recreate primary, unique and foreign key constraints
alter table Course
add constraint Pri_C_No primary key (C_NO);
-- Create table
create table T_Course
(
S_no varchar2(20),
C_no varchar2(20),
Grade number(4,1)
)
;
-- Add comments to the table
comment on table T_Course
is 'take the course选课信息';
-- Add comments to the columns
comment on column T_Course.Grade
is '成绩';
-- Create/Recreate primary, unique and foreign key constraints
alter table MEA.T_Course
add constraint For_S_No foreign key (S_NO)
references Student (S_No);
alter table MEA.T_Course
add constraint For_C_No foreign key (C_NO)
references Course (C_No);
3:
-- Add/modify columns
alter table Student add S_Tel varchar2(20);
-- Add comments to the columns
comment on column Student .S_Tel
is '电话';
4:
-- Add/modify columns
alter table Course modify C_Name CVARCHAR2(20);
5:
INSERT INTO Student (S_No, S_Name,S_Sex, S_Birthday ) VALUES ('A001','日月哥','女',to_date('20110515','yyyyMMdd'))
其他你自己来
6:
update Course set Grade =Grade +1
7:
-- Create/Recreate indexes
create unique index PK_oo on Student(S_Birthday order by desc);
8:
select s.S_No, avg(tc.Grade) from Student s,T_Course tc where s.S_No=tc.S_No group by s.S_No
9:
delete T_Course tc where tc.S_No='A000';
delete Student s where s.S_No='A000';
思考题自己来,我用的orcal,这都不给分的话,爆你菊花啦