select 'select '||''''||t.TABLE_NAME||''''||' as table_name, count(*) from '|| t.TABLE_NAME||' union' from user_tables t ;
详细见: http://blog.csdn.net/pioayang/article/details/10108671
SELECT /*+ rule */ s.username, decode(l.type,'TM','TABLE LOCK', 'TX','ROW LOCK', NULL) LOCK_LEVEL, o.owner,o.object_name,o.object_type, s.sid,s.serial#,s.terminal,s.machine,s.program,s.osuser FROM v$session s,v$lock l,dba_objects o WHERE l.sid = s.sid AND l.id1 = o.object_id(+) AND s.username is NOT Null --kill session语句 alter system kill session'50,492'; --以下几个为相关表 SELECT * FROM v$lock; SELECT * FROM v$sqlarea; SELECT * FROM v$session; SELECT * FROM v$process ; SELECT * FROM v$locked_object; SELECT * FROM all_objects; SELECT * FROM v$session_wait;
--1.查出锁定object的session的信息以及被锁定的object名
SELECT l.session_id sid, s.serial#, l.locked_mode,l.oracle_username, l.os_user_name,s.machine, s.terminal, o.object_name, s.logon_time FROM v$locked_object l, all_objects o, v$session s WHERE l.object_id = o.object_id AND l.session_id = s.sid ORDER BY sid, s.serial# ;
--2.查出锁定表的session的sid, serial#,os_user_name, machine name, terminal和执行的语句
--比上面那段多出sql_text和action SELECT l.session_id sid, s.serial#, l.locked_mode, l.oracle_username, s.user#, l.os_user_name,s.machine, s.terminal,a.sql_text, a.action FROM v$sqlarea a,v$session s, v$locked_object l WHERE l.session_id = s.sid AND s.prev_sql_addr = a.address ORDER BY sid, s.serial#;
--3.查出锁定表的sid, serial#,os_user_name, machine_name, terminal,锁的type,mode
SELECT s.sid, s.serial#, s.username, s.schemaname, s.osuser, s.process, s.machine, s.terminal, s.logon_time, l.type FROM v$session s, v$lock l WHERE s.sid = l.sid AND s.username IS NOT NULL ORDER BY sid;
详细见 http://blog.csdn.net/pioayang/article/details/11248235
select t3.table_name,t3.comments,t2.comments,t1.COLUMN_NAME ,t1.DATA_TYPE||'('||decode(t1.DATA_TYPE, '', t1.DATA_PRECISION+t1.DATA_SCALE, t1.data_length)||')' from user_tab_cols t1, user_col_comments t2, user_tab_comments t3 where t1.TABLE_NAME=t2.table_name(+) and t1.COLUMN_NAME=t2.column_name(+) and t1.TABLE_NAME=t3.table_name(+) and lower(t1.TABLE_NAME)='user';
详细见 http://blog.csdn.net/pioayang/article/details/10924423
1 查看表空间路径
select * from dba_data_files;
2 修改表空间大小
ALTER TABLESPACE MAXDATA ADD DATAFILE '/oradata/XX/MAXDATA02.DBF' SIZE 1000M;
可以通过PL/SQL查看。 1. 查看所有表空间大小 select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name; 2. 未使用的表空间大小 select tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by tablespace_name; 查看当前用户每个表占用空间的大小: Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name
3.创建表空间
-- 创建 DZJC 表空间 CREATE SMALLFILE TABLESPACE "LHCZW" DATAFILE 'F:\oracle\product\10.2.0\oradata\LH\LHCZW' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ; -- 创建 DZJC_INDEX 表空间 CREATE SMALLFILE TABLESPACE "LHCZW_INDEX" DATAFILE 'F:\oracle\product\10.2.0\oradata\LH\LHCZW_index' SIZE 100M AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ; -- 创建 DZJC_TEMP 表空间 CREATE SMALLFILE TEMPORARY TABLESPACE "LHCZW_TEMP" TEMPFILE 'F:\oracle\product\10.2.0\oradata\LH\LHCZW_temp' SIZE 100M AUTOEXTEND ON NEXT 25M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M; -- 创建 DZJC 用户 CREATE USER "LHCZW" PROFILE "DEFAULT" IDENTIFIED BY "123456" DEFAULT TABLESPACE "LHCZW" TEMPORARY TABLESPACE "LHCZW_TEMP" ACCOUNT UNLOCK; GRANT "CONNECT" TO "LHCZW" WITH ADMIN OPTION; GRANT "DBA" TO "LHCZW" WITH ADMIN OPTION;
详细见:http://blog.csdn.net/pioayang/article/details/11252409
select col.TABLE_NAME,replace(initcap(col.TABLE_NAME),'_', '') , 'private '||decode(k.DATA_TYPE, 'VARCHAR2', 'String', 'NUMBER', 'java.lang.Integer', 'DATE', 'java.sql.Timestamp','CHAR', 'String', k.DATA_TYPE)||' '|| lower(col.COLUMN_NAME)||';//'||com.comments , '<property name="'||lower(col.COLUMN_NAME)||'" column="'||lower(col.COLUMN_NAME)||'" type="' ||decode(k.DATA_TYPE, 'VARCHAR2', 'java.lang.String', 'NUMBER', 'java.lang.Integer', 'DATE', 'java.sql.Timestamp','CHAR', 'String', k.DATA_TYPE)||'"/>' from user_tab_columns k , user_tab_columns col inner join user_col_comments com on col.TABLE_NAME = com.TABLE_NAME and col.COLUMN_NAME = com.COLUMN_NAME and com.table_name like '%T_JC_NEW_ZFCG_%' and replace(initcap(col.TABLE_NAME),'_', '') like '%TJcNewZfcgZjjbxx%' where k.TABLE_NAME=col.TABLE_NAME and k.COLUMN_NAME=col.COLUMN_NAME and k.COLUMN_ID=col.COLUMN_ID order by col.TABLE_NAME, col.COLUMN_ID