oracle中常用的一些語句有哪些
1、Oracle中,每一條記錄都有一個rowid,rowid在整個數據庫中是唯一的, rowid確定了每條記錄是在ORACLE中的哪一個數據文件、塊、行上。
2、在重復的記錄中,可能所有列的內容都相同,但rowid不會相同,所以只要確定出重復記錄中 那些具有最大rowid的就可以了,其余全部刪除。 實現方法: SQL> create table a ( 2 bm char (4), --編碼 3 mc varchar2(20) --名稱 4 ) 5 / 表已建立。
SQL> insert into a values('1111','1111'); SQL> insert into a values('1112','1111'); SQL> insert into a values('1113','1111'); SQL> insert into a values('1114','1111'); SQL> insert into a select * from a; 插入4個記錄。 SQL> commit; 完全提交。
SQL> select rowid,bm,mc from a; ROWID BM MC ------------------ ---- ------- 000000D5。0000。
0002 1111 1111 000000D5。 0001。
0002 1112 1111 000000D5。0002。
0002 1113 1111 000000D5。0003。
0002 1114 1111 000000D5。0004。
0002 1111 1111 000000D5。0005。
0002 1112 1111 000000D5。0006。
0002 1113 1111 000000D5。0007。
0002 1114 1111 查詢到8記錄。 查出重復記錄 SQL> select rowid,bm,mc from a where a。
rowid!=(select max(rowid) from a b where a。bm=b。
bm and a。mc=b。
mc); ROWID BM MC ------------------ ---- -------------------- 000000D5。 0000。
0002 1111 1111 000000D5。0001。
0002 1112 1111 000000D5。0002。
0002 1113 1111 000000D5。0003。
0002 1114 1111 刪除重復記錄 SQL> delete from a a where a。 rowid!=(select max(rowid) from a b where a。
bm=b。bm and a。
mc=b。mc); 刪除4個記錄。
SQL> select rowid,bm,mc from a; ROWID BM MC ------------------ ---- -------------------- 000000D5。 0004。
0002 1111 1111 000000D5。0005。
0002 1112 1111 000000D5。0006。
0002 1113 1111 000000D5。0007。
0002 1114 1111。
Oracle10G常用維護語句有哪些
1 創建表空間 CREATE TABLESPACE CPORTAL LOGGING DATAFILE '/dev/raw/raw1' SIZE 30000M REUSE EXTENT MANAGEMENT LOCAL 2 創建用戶 CREATE USER CPORTAL PROFILE DEFAULT IDENTIFIED BY CPORTAL DEFAULT TABLESPACE CPORTAL TEMPORARY TABLESPACE TEMP ACCOUNT UNLOCK; GRANT CONNECT TO CPORTAL; GRANT RESOURCE TO CPORTAL; 3 參數修改 ALTER SYSTEM SET sga_target 1000M SCOPESPFILE; ALTER SYSTEM SET pga_aggregate_target 200M SCOPESPFILE; ALTER SYSTEM SET OPEN_CURSORS500 SCOPESPFILE; ALTER SYSTEM SET processes200 SCOPESPFILE; ALTER SYSTEM SET remote_login_passwordfile NONE SCOPESPFILE; create pfile from spfile; -- -- Modify the other oracle parameter! -- ALTER DATABASE TEMPFILE '/opt/oracle/oradata/cportal/temp01。
dbf' RESIZE 1024M; ALTER DATABASE DATAFILE '/opt/oracle/oradata/cportal/undotbs01。dbf' RESIZE 1024M; ALTER DATABASE DATAFILE '/opt/oracle/oradata/cportal/undotbs01。
dbf' AUTOEXTEND ON MAXSIZE 10240M 4 查看表空間名稱和大小 select t。tablespace_name,round(sum(bytes/(1024*1024)),0) ts_size from dba_tablespaces t dba_data_files d where t。
tablespace_name d。tablespace_name group by t。
tablespace_name; 5 查看表空間的使用情況 select sum(bytes)/(1024*1024) as free_space,tablespace_name from dba_free_space group by tablespace_name; 6、查看表空間物理文件的名稱及大小 select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name; 7、查看數據庫庫對象 select owner, object_type, status, count(*) count# from all_objects group by owner, object_type, status; 8、查看控制文件 select name from v$controlfile; 9、查看日志文件 select member from v$logfile; 10 。 結束用戶會話 alter system kill session 'SID,SERIAL#'; select sid,serial#,username,program,machine,status from v$session;。
oracle 都有哪些基本語句
Oracle主要包括sql 和pl/sql兩類語言,當然,以后java在Oracle數據庫中一定會越來越重要。
sql主要包括以下部分:ddl(數據定義語言,如create),dml(數據操作語言,如insert),dql(數據查詢語言,如select),dcl(數據控制語言,如grant)。pl/sql主要包括:數據類型,運算符,判斷語句,循環語句,異常等,其中cursor是精華,要好好學學。
pl/sql跟vb很相似,能學懂vb學pl/sql就沒問題。把心態放平,你會覺得Oracle不過如此,很容易上手,當有一天你重新覺得Oracle真的很難,那你就學成了。
Oracle導表語句有哪些
1,create table vincent_sms as select * from vincent_voice 創建一個表vincent_sms,其字段類型同vincent_voice完全一樣,并會把vincent_voice中的記錄也復制到vincent_sms表中去 注:select子句還可以加where限制條件 2, insert into vincent_sms select * from vincent_voice 將vincent_voice表中的記錄導入vincent_sms 表中 注:select子句還可以加where限制條件,如果vincent_sms 和vincent_voice表結構不一樣的話,當然可以指明字段的。
oracleRAC如何調整常用語句
;/llrac/app/oracle/product/10。
2/crs/bin/crsctl set css diagwait 9 ;/llrac/app/oracle/product/10。2/db_1/bin/crsctl set css trace 9 ;/llrac/app/oracle/product/10。
2/db_1/bin/crsctl set css misscount 120 ;/llrac/app/oracle/product/10。2/db_1/bin/crsctl set css disktimeout 300 ;/llrac/app/oracle/product/10。
2/db_1/bin/crsctl set css reboottime 3 /llrac/app/oracle/product/10。2/db_1/bin/crsctl get css reboottime ALTER SYSTEM SET LOCAL_LISTENER = '(ADDRESS = (PROTOCOL = TCP)(HOST = 192。
168。1。
154)(PORT = 1521))' SID='racweb1' ALTER SYSTEM SET LOCAL_LISTENER = '(ADDRESS = (PROTOCOL = TCP)(HOST = 192。168。
1。 155)(PORT = 1521))' SID='racweb2' /etc/init。
d/oracleasm createdisk dsvol1 /dev/sdd5 /etc/init。d/oracleasm createdisk dsvol2 /dev/sdd6 /etc/init。
d/oracleasm createdisk dsvol3 /dev/sdd7 /etc/init。d/oracleasm createdisk asvol1 /dev/sdd8 /etc/init。
d/oracleasm createdisk asvol2 /dev/sdd9 /etc/init。 d/oracleasm createdisk asvol3 /dev/sdd10 /etc/sysconfig/rawdevices /dev/raw/raw11 /dev/sdd1 /dev/raw/raw12 /dev/sdd2 chown oracle:oinstall /dev/raw/raw11 chmod 664 /dev/raw/raw11 chown oracle:oinstall /dev/raw/raw12 chmod 664 /dev/raw/raw12 rpm -ivh oracleasm-support-2。
1。3-1。
el5。x86_64。
rpm rpm -ivh oracleasm-2。6。
18-164。el5-2。
0。5-1。
el5。x86_64。
rpm rpm -ivh oracleasmlib-2。0。
4-1。el5。
x86_64。 rpm racdb6。
lilianwang。com racdb6-heart。
lilianwang。com racdb6-vip。
lilianwang。com。
oracle維護常用語句有哪些
1、查看表空間的名稱及大小 select *pace_name, round(sum(bytes/(1024*1024)),0) ts_size from dba_tablespaces t, dba_data_files d where *pace_name = *pace_name group by *pace_name; 2、查看表空間物理文件的名稱及大小 select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name; 3、查看回滾段名稱及大小 select segment_name, tablespace_name, *, (initial_extent/1024) InitialExtent,(next_extent/1024) NextExtent, max_extents, * CurExtent From dba_rollback_segs r, v$rollstat v Where *t_id = *(+) order by segment_name ; 4、查看控制文件 select name from v$controlfile; 5、查看日志文件 select member from v$logfile; 6、查看表空間的使用情況 select sum(bytes)/(1024*1024) as free_space,tablespace_name from dba_free_space group by tablespace_name; SELECT *PACE_NAME,* TOTAL,* USED, * FREE, (**100)/* "% USED",(**100)/* "% FREE" FROM *$TS_AVAIL A,*$TS_USED B,*$TS_FREE C WHERE *PACE_NAME=*PACE_NAME AND *PACE_NAME=*PACE_NAME; 7、查看數據庫庫對象 select owner, object_type, status, count(*) count# from all_objects group by owner, object_type, status; 8、查看數據庫的版本 Select version FROM Product_component_version Where SUBSTR(PRODUCT,1,6)='Oracle'; 9、查看數據庫的創建日期和歸檔方式 Select Created, Log_Mode, Log_Mode From V$Database; 10、查看當前所有對象 SQL> select * from tab; 1 1、建一個和a表結構一樣的空表 SQL> create table b as select * from a where 1=2; SQL> create table b(b1,b2,b3) as select a1,a2,a3 from a where 1=2; 1 2、察看數據庫的大小,和空間使用情況 SQL> col tablespace format a20 SQL> select *_id 文件ID, *pace_name 表空間, *_name 物理文件名, * 總字節數, (*-sum(nvl(*,0))) 已使用, sum(nvl(*,0)) 剩余, sum(nvl(*,0))/(*)*100 剩余百分比 from dba_free_space a,dba_data_files b where *_id=*_id group by *pace_name,*_name,*_id,* order by *pace_name / dba_free_space --表空間剩余空間狀況 dba_data_files --數據文件空間占用情況 1 3、查看現有回滾段及其狀態 SQL> col segment format a30 SQL> SELECT SEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUS FROM DBA_ROLLBACK_SEGS; 1 4、查看數據文件放置的路徑 SQL> col file_name format a50 SQL> select tablespace_name,file_id,bytes/1024/1024,file_name from dba_data_files order by file_id; 1 5、顯示當前連接用戶 SQL> show user 1 6、把SQL*Plus當計算器 SQL> select 100*20 from dual; 1 7、連接字符串 SQL> select 列1||列2 from 表1; SQL> select concat(列1,列2) from 表1; 1 8、查詢當前日期 SQL> select to_char(sysdate,'yyyy-mm-dd,hh24:mi:ss') from dual; 1 9、用戶間復制數據 SQL> copy from user1 to user2 create table2 using select * from table1; 20、視圖中不能使用order by,但可用group by代替來達到排序目的 SQL> create view a as select b1,b2 from b group by b1,b2; 2 1、通過授權的方式來創建用戶 SQL> grant connect,resource to test identified by test; SQL> conn test/test。
Oracle數據庫sqlplus常用命令有哪些
1、得到數據庫名和創建日期 SELECT name, created, log_mode, open_mode FROM v$database; 2、ORACLE數據庫的計算機的主機名,ORACLE數據庫的實例名及ORACLE數據庫管理系統的版本信息 SELECT host_name, instance_name, version FROMv$instance; 3、為了知道oracle數據庫版本的一些特殊信息 select * from v$version; 4、獲取控制文件名字 select * from v$controlfile; 5、得到Oracle數據庫的重做日志配置信息 SELECT group#, members, bytes, status, archived FROM v$log; select GROUP#,MEMBER from v$logfile; 6、獲取oracle的每個重做日志(成員)文件所存放的具體位置 select * from v$logfile; 7、知道ORACLE數據庫的備份和恢復策略和歸檔文件的具體位置 archive log list 8、知道ORACLE數據庫中到底有多少表空間以及每個表空間的狀態 select tablespace_name, block_size, status, contents, logging from dba_tablespaces; select tablespace_name, status from dba_tablespaces; 9、知道每個表空間存在哪個磁盤上以及文件的名字等信息 SELECT file_id, file_name, tablespace_name, status, bytes from dba_data_files; select file_name, tablespace_name from dba_data_files; 10、知道Oracle數據庫系統上到底有多少用戶和都是什么時候創建的 select username,created from dba_users; select username, DEFAULT_TABLESPACE from dba_users; 1 1、從控制文件中取出信息涉及到以下一些相關的命令 select * from v$archived select * from v$archived_log select * from v$backup select * from v$database select * from v$datafile select * from v$log select * from v$logfile select * from v$loghist select * from v$tablespace select * from v$tempfile 1 2、控制文件由兩大部份組成:可重用的部份和不可重用的部分。
轉載請注明出處華閱文章網 » oracle常用語句