求SQL的数据库实验报告..关于学生管理系统的..

2025-01-07 05:23:52
推荐回答(2个)
回答1:

SQL> create table stu (
2 stu_id number,
3 name varchar2(20),
4 class varchar2(20),
5 sex char(1)
6 );

表已创建。

SQL> alter table stu add constraint pk primary key (stu_id);

表已更改。

SQL> insert into stu values(1, '王昭君', '一班', 'f');

已创建 1 行。

SQL> insert into stu values(2, '杨玉环', '二班', 'f');

已创建 1 行。

SQL> insert into stu values(3, '貂蝉', '三班', 'f');

已创建 1 行。

SQL> insert into stu values(4, '西施', '四班', 'f');

已创建 1 行。

SQL> insert into stu values(5, '帅哥', '五班', 'm');

已创建 1 行。

SQL> commit;

提交完成。

SQL> select * from stu;

STU_ID NAME CLASS S
---------- -------------------- -------------------- -
1 王昭君 一班 f
2 杨玉环 二班 f
3 貂蝉 三班 f
4 西施 四班 f
5 帅哥 五班 m

SQL> delete from stu where stu_id = 5;

已删除 1 行。

SQL> update stu set sex = 'm' where stu_id = 1;

已更新 1 行。

SQL> select * from stu;

STU_ID NAME CLASS S
---------- -------------------- -------------------- -
1 王昭君 一班 m
2 杨玉环 二班 f
3 貂蝉 三班 f
4 西施 四班 f

SQL> alter table stu add column age number;
alter table stu add column age number
*
第 1 行出现错误:
ORA-00904: : 标识符无效

SQL> alter table stu add age number;

表已更改。

SQL> desc stu;
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
STU_ID NOT NULL NUMBER
NAME VARCHAR2(20)
CLASS VARCHAR2(20)
SEX CHAR(1)
AGE NUMBER

SQL> update stu set age = 2000 where stu_id = 1;

已更新 1 行。

SQL> select a from (select age a from stu);

A
----------
2000

SQL> select count(*) from stu group by sex;

COUNT(*)
----------
1
3

SQL> select name from stu order by stu_id desc;

NAME
--------------------
西施
貂蝉
杨玉环
王昭君

SQL> spool off;
帮你写的

回答2:

手头上确实有你需要的,不过对于你,我只想弱弱地说一句。。。你提这么多的要求,你也好意思拿15'来忽悠人。。。。