oracle整理

一、生成HTML頁面
把下面的內容存爲一個 .sql 腳本 ( 比如說 C:/q.sql) :

SET ECHO OFF
SET FEEDBACK OFF
SET MARKUP HTML ON SPOOL ON
SPOOL c:/Dept.html
SELECT * FROM dept;
SPOOL OFF
SET MARKUP HTML OFF
SET ECHO ON
SET FEEDBACK ON
在 SQL*Plus 中調用,即可創建內容。在 C:中創建了名爲 Dept.html 的 HTML 頁面,如下所示:

輸出:
DEPTNO  DNAME  LOC 
10  ACCOUNTING  NEW YORK 
20  RESEARCH  DALLAS 
30  SALES  CHICAGO 
40  OPERATIONS  BOSTON 


二、導出SQL文件(比如a.sql)
a.sql文件:

select * from w_resumes where rownum<&num
/

在SQL>@c:/a.sql會執行該文件的SQL語句

 

三、 Oracle <----> Excel
Excel移植到Oracle中
1)將要導入的Excel文件另存爲txt文件(製表符分隔),保存在C盤
2)新建一個文件input.ctl(控制文件),保存在C盤

load data   --1、控制文件標識
infile 'Book1.txt'  --2、要輸入的數據文件名爲test.txt
append into table star_test --3、向表test中追加記錄
fields terminated by X'09' --4、字段終止於X'09',是一個製表符(TAB)
(id,username,password,sj) -----定義列對應順序

3)cmd ---> sqlldr userid=wsbs/wsbs@star control=input.ctl

默認日誌文件名爲:input.log
默認壞記錄文件爲:input.bad


Oracle移植到Excel中
1)在"控制面板"-->  ODBC數據源(ODBC)--> 系統DSN中添加"ODBC FOR ORACLE" --> 輸入(數據源名,服務名 [ 在oracle目錄中Ora81/network/ADMIN/tnsnames.ora文件中引用的名字---單位裏就是star

STAR =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.2.103)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = webtest)
    )
  )

] ,用戶ID)
2)新建Excel文件 --> 數據(獲取外部數據) --> 新建數據庫查詢 --> 選擇數據源 --> 選擇表名 --> 將數據返回Excel文件上


四、 如何查詢重複的記錄
SELECT * FROM TABLE_NAME
WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D
WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2)

 如何刪除重複記錄
DELETE FROM TABLE_NAME
WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D
WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章