oracle數據庫的語句怎麼寫
1.打開plsql並轉到登錄頁面。
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,又被刪除,依次類推,便沒有了數據。