當前位置:生活全書館 >

綜合知識

> oracle資料庫的語句怎麼寫

oracle資料庫的語句怎麼寫

1. oracle資料庫的分組查詢的語句怎麼寫

1.開啟plsql並轉到登入頁面。

oracle資料庫的語句怎麼寫

2.以管理員身份登入資料庫。

3.登入後,建立一個新的SQL視窗。

4,輸入,以下語句選擇a.file#,a.name,a.bytes / 1024/1024 CurrentMB,ceilHWM * a.block_size / 1024/1024Resizeto,a.bytes - HWM * a .block_size / 1024/1024 releaseMB;

5.單擊“執行”按鈕以執行查詢操作。

6,查詢後,可以在查詢結果中看到每個資料庫檔案的具體路徑。

2. oracle資料庫連線語句怎麼寫

public void testOracle()

{

Connection con = null;// 建立一個數據庫連線

PreparedStatement pre = null;// 建立預編譯語句物件,一般都是用這個而不用Statement

ResultSet result = null;// 建立一個結果集物件

try

{

Class.forName("oracle.jdbc.driver.OracleDriver");// 載入Oracle驅動程式

System.out.println("開始嘗試連線資料庫!");

String url = "jdbc:oracle:" + "thin:@127.0.0.1:1521:XE";// 127.0.0.1是本機地址,XE是精簡版Oracle的預設資料庫名

String user = "system";// 使用者名稱,系統預設的賬戶名

String password = "147";// 你安裝時選設定的密碼

con = DriverManager.getConnection(url, user, password);// 獲取連線

System.out.println("連線成功!");

String sql = "select * from student where name=?";// 預編譯語句,“?”代表引數

pre = con.prepareStatement(sql);// 例項化預編譯語句

pre.setString(1, "劉顯安");// 設定引數,前面的1表示引數的索引,而不是表中列名的索引

result = pre.executeQuery();// 執行查詢,注意括號中不需要再加引數

while (result.next())

// 當結果集不為空時

System.out.println("學號:" + result.getInt("id") + "姓名:"

+ result.getString("name"));

}

catch (Exception e)

{

e.printStackTrace();

}

finally

{

try

{

// 逐一將上面的幾個物件關閉,因為不關閉的話會影響效能、並且佔用資源

// 注意關閉的順序,最後使用的最先關閉

if (result != null)

result.close();

if (pre != null)

pre.close();

if (con != null)

con.close();

System.out.println("資料庫連線已關閉!");

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

3. oracle資料庫sql簡單的編寫語句

1)

create table 學號(

name varchar2(20),

age number,

major varchar2(40),

address varchar2(100),

entrancedate date);

2)create view 檢視 as select name from 學號;

3)

SGA + PGA 和後臺程序

sga :

db bufer cache

shared pool

large pool

stream pool

pga :

uga+sort area+hash area

nomout -> mount -> open

nomout 是讀取init.ora檔案,知道contrlofile位置

mount 是打開了contrlofile,知道資料檔案位置 可以media restore和media recover

open 是打開了資料檔案 可以instance recover

4. 在oracle資料庫中建立表語句如何寫

Oracle不能再建表語句中實現自增的,需要藉助sequence才能實現,,設定主鍵只需要在欄位後面加primary key關鍵字即可

create table servicelogs(

id number(8) primary key,

servicetype varchar(100),

outsys varchar(100),

methodname varchar(100),

methodresult varchar(200),

errormessage varchar(900),

inparameter varchar(900),

returncontent varchar(900),

logtime varchar(20)

);

建立序列號:

create sequence servicelogs_sequence

increment by 1 --步長,每次增加幾

start with 1 --從幾開始,這裡是1

nomaxvalue --不設定最大值

nocycle --一直累加,不迴圈

nocache; --不建緩衝區

當然到此也可以結束,每次呼叫手動呼叫(序列名稱.nextcal),但是這樣比較麻煩,還是建立一個觸發器

create or replace trigger servicelogs_trig before

insert on servicelogs for each row

begin

select servicelogs.nextval into new.id from dual;

end;

測試:

insert into servicelogs(servicetype)values('aaab');

select * from servicelogs;

5. 在oracle資料庫中的分頁SQL語句怎麼寫

前提:

分頁引數:size = 20 page = 2;

沒有order by的查詢;

巢狀子查詢,兩次篩選(推薦使用)。

SQL語句:

SELECT *

FROM (SELECT ROWNUM AS rowno, t.*

FROM DONORINFO t

WHERE t.BIRTHDAY BETWEEN TO_DATE ('19800101', 'yyyymmdd')

AND TO_DATE ('20060731', 'yyyymmdd')

AND ROWNUM <= 20*2) table_alias

WHERE table_alias.rowno > 20*(2-1);

擴充套件資料:

rownum總是從1開始的,第一條不滿足去掉的話,第二條的rownum 又成了1。依此類推,所以永遠沒有不滿足條件的記錄。

可以這樣理解:rownum是一個序列,是Oracle資料庫從資料檔案或緩衝區中讀取資料的順序。它取得第一條記錄則rownum值為1,第二條為2。

依次類推:當使用“>;、>;=、=、between。and”這些條件時,從緩衝區或資料檔案中得到的第一條記錄的rownum為1,不符合sql語句的條件,會被刪除,接著取下條。下條的rownum還會是1,又被刪除,依次類推,便沒有了資料。

標籤: 資料庫 oracle 語句
  • 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/zonghezhishi/kyl45v.html