1、激活鎖定的用戶
alter user scott account unlock identified by tiger;
2、使用內含腳本建立scott用戶
@%oracle_home%\rdbms\admin\utlsampl.sql
3、查看當前用戶所有的表
select * from tab;
4、將屏幕顯示輸入到文本文件內
spool D:1.txt
select * from emp;
spool off
=====================================
spool D:1.txt append
select * from emp;
spool off
5、運行緩沖區內的sql語句
run或/
6、@腳本:運行指定腳本
@%oracle_home%\rdbms\admin\utlxplan.sql
@@為運行相對路徑下的腳本,一般是在大教本調用小腳本的時候使用。
7、Save:將當前SQLPLUS緩沖區內的SQl語句保存到指定的文件中
save c:\2.txt
8、Get:將文件中的SQl語句調入到SQLPLUS緩沖區內。
get D:\2.txt
9、Edit:編輯當前SQlPlus緩沖區內的SQl語句
如 ed
10、注釋
行注釋:--是注釋當前行
塊注釋:/* */是注釋多行
11、清屏命令
clear screen
12、修改用戶的密碼
alter user sys identified by sys;
13、distinct去掉重復的行
select distinct deptno from emp;
14、where和order by
select deptno,ename from emp where deptno=10 order by deptno;
15、關系運算
=,<>,!=,^=,>=,<=,>,<,Between...and....(含上下界)
16、in、like
select deptno,ename,sal from emp where deptno in(10,20);
like
-通配一個,僅匹配一個字符,
%通配沒有或多個字符
select ename,deptno from emp where ename like 'J%';
select ename from emp where ename like '%s_%' escape 's';
17、優先級
算術運算
連接運算
關系運算
is [not] null,like,[not]In
between
not
and
or
括號強制優先級
18、order by 子句
默認是升序 asc
降序要指定 desc
19、操作日期的函數
sysdate 求當前數據庫的
這麼點分,我只能看到第二行,余下的就看不下去了。
表建得不合理,不符合數據庫規范化要求,課程並不是由學號所決定了,課程可作為一個獨立的表,還有,成績是有學號和課程號共同決定的,因此成績表也應該列出來作為一個獨立的表。
應該分為3個表來建立數據庫
1、學生信息表(學號,姓名,性別,出生日期,聯系電話)
2、課表(課程號,課程名)
3、成績表(學號,課程號,成績)
期中學號是學生表的主鍵,課程號是課表的主鍵,學號和課程號組合是成績表的主鍵,兩者共同決定成績。
拆分出來後,避免了數據冗余的問題,消除專遞依賴!
完整性參照很簡單,你自己解決吧。