下午修改oracle datebase中的欄位時,提示"Record is locked by another user",錯誤可想而知。 下面解除鎖 1、查看鎖select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.sid order by t2.logon_time;2、Kill--alter system kill
一.安裝LogMiner$ sqlplus /nologSQL*Plus: Release 10.2.0.3.0 - Production on Tue Apr 15 12:30:58 2008Copyright (c) 1982, 2006, Oracle. All Rights Reserved.SQL> conn / as sysdba;Connected to an idle instance.SQL> startupORACLE instance
預存程序,學會了遊標的使用就學會了資料的處理。隱式遊標select into from 擷取值 所有的隱式遊標都被假設為只返回一條記錄。使用隱式遊標時,使用者無需進行聲明、開啟及關閉。PL/SQL隱含地開啟、處理,然後關掉遊標。 create or replace procedure pro_two(p_id in integer) is --declare v_description varchar2(132) := ''; v_code
###########################in############################create or replace procedure pro_eight(p_one in varchar2, p_two out varchar2, p_three in out varchar2) is v_str1
Package是plsql語言中的一種對象。和預存程序一樣都是對象,之所以放在預存程序來說它,就是除了文法,基本上沒什麼可說的。類比java,包package就是介面與實作類別的關係。包package的出現主要也是為了面向介面編程(個人理解)。你可以把java介面的知識類比學習包package。裡面可以放一些變數定義,方法定義,預存程序定義。包package分為兩大部分:包說明和包體。包說明類似介面定義,包體類似實作類別。包說明的格式:create or replace package
1、尋找表中多餘的重複記錄,重複記錄是根據單個欄位(peopleId)來判斷 select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1) 2、刪除表中多餘的重複記錄,重複記錄是根據單個欄位(peopleId)來判斷,只留有rowid最小的記錄 delete from people where peopleId
文法:select *from 表名where 條件1start with 條件2connect by prior 當前表欄位=級聯表欄位start with與connect by prior陳述式完成遞迴記錄,形成一棵樹形結構,通常可以在具有階層的表中使用。start with表示開始的記錄connect by prior 指定與目前記錄關聯時的欄位關係代碼:--建立部門表,這是一個具有階層的表,子記錄通過parent_id與父記錄的id進行關聯create table DEPT(ID