sql系列(基礎篇)-前言 課前補充知識

來源:互聯網
上載者:User

前言 課前補充知識


Number(p,s)
Number(p,s):數字類型,p 表示數位有效長度(從數位左邊第 1 位不為 0
的開始算起,直到最右邊的長度;取值範圍 0~38 位),s 表示數位精度(即小數點右邊的位元,取值範圍-84~127 位);
Varchar2(s)
Varchar2(s):可變長的字元類型,s 表示字串的長度,取值範圍 1~4000 位;
Char(s)
Char(s):定長的字元類型,s 表示字串的長度,取值範圍 1~2000 位;
Date
Date:時間類型,表示時間的年月日,沒有長度和精度,取值範圍公元前 4713 年 12 月 31 日~公元後 9999 年 12 月 31 日


1 sav 命令使用
1.1 用 sav 命令儲存檔案內容
TYGER@ORCL>create table t as select * from user_tables;


Table created.


TYGER@ORCL>select count(*) from t;  


  COUNT(*)
----------
        11


TYGER@ORCL>sav /home/oracle/sel_t.sql
Created file /home/oracle/sel_t.sql
TYGER@ORCL>!
[oracle@tyger ~]$ ls
sel_t.sql


[oracle@tyger ~]$ cat sel_t.sql 
select count(*) from t
/
[oracle@tyger ~]$ 


1.2 覆蓋內容  sav filename rep
TYGER@ORCL>l
  1* select * from t order by 1
TYGER@ORCL>sav /home/oracle/sel_t.sql rep
Wrote file /home/oracle/sel_t.sql
TYGER@ORCL>!
[oracle@tyger ~]$ cat sel_t.sql 
select * from t order by 1
/
[oracle@tyger ~]$ 


1.3 追加內容 sav filename app
[oracle@tyger ~]$ cat sel_t.sql 
select * from t order by 1
/
[oracle@tyger ~]$ exit
exit


TYGER@ORCL>select count(*) from t;


  COUNT(*)
----------
        11


TYGER@ORCL>sav /home/oracle/sel_t.sql app
Appended file to /home/oracle/sel_t.sql
TYGER@ORCL>!
[oracle@tyger ~]$ 
[oracle@tyger ~]$ cat sel_t.sql 
select * from t order by 1
/
select count(*) from t
/
[oracle@tyger ~]$ 


2. spool 命令使用
spool on  表示將緩衝開啟,不然只能儲存最近執行的1條命令;
spool filename 表示將緩衝中出現的命令以及結果輸出到某個檔案中;
spool off  表示關閉緩衝,同時檔案會自動儲存;


[oracle@tyger ~]$ sqlplus / as sysdba


SQL*Plus: Release 10.2.0.1.0 - Production on Wed Jun 18 13:52:25 2014


Copyright (c) 1982, 2005, Oracle.  All rights reserved.




Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options


SYS@ORCL>spool /home/oracle/sel_emp.sql
SYS@ORCL>conn scott/tiger;
Connected.
SCOTT@ORCL>select empno,ename from emp;


     EMPNO ENAME
---------- ----------
      7369 SMITH
      7499 ALLEN
      7521 WARD
      7566 JONES
      7654 MARTIN
      7698 BLAKE
      7782 CLARK
      7788 SCOTT
      7839 KING
      7844 TURNER
      7876 ADAMS


     EMPNO ENAME
---------- ----------
      7900 JAMES
      7902 FORD
      7934 MILLER


14 rows selected.


SCOTT@ORCL>spool off;
SCOTT@ORCL>exit


[oracle@tyger ~]$ cat sel_emp.sql 
SYS@ORCL>conn scott/tiger;
Connected.
SCOTT@ORCL>select empno,ename from emp;


     EMPNO ENAME                                                                
---------- ----------                                                           
      7369 SMITH                                                                
      7499 ALLEN                                                                
      7521 WARD                                                                 
      7566 JONES                                                                
      7654 MARTIN                                                               
      7698 BLAKE                                                                
      7782 CLARK                                                                
      7788 SCOTT                                                                
      7839 KING                                                                 
      7844 TURNER                                                               
      7876 ADAMS                                                                


     EMPNO ENAME                                                                
---------- ----------                                                           
      7900 JAMES                                                                
      7902 FORD                                                                 
      7934 MILLER                                                               


14 rows selected.


SCOTT@ORCL>spool off;
[oracle@tyger ~]$ 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.