查看ORACLE 下所有信息

-- 查看ORACLE 数据库中本用户下的所有表 SELECT table_name FROM user_tables; -- 查看ORACLE 数据库中所有用户下的所有表 select user,table_name from all_tables; -- 查看ORACLE 数据库中本用户下的所有列 select table_name,column_name from user_tab_columns; -- 查看ORACLE 数据库中本用户下的所有列 select user,table_name,column_name from all_tab_columns; -- 查看ORACLE 数据库中的序列号 select * from user_sequences; -- 上面的所有对象,都可以通过下面的SQL语句查询得到 -- 查询所有的用户生成的ORACLE对象 SELECT * FROM user_objects; -- 查看ORACLE 数据库中所有表的注释 select table_name,comments from user_tab_comments; -- 查看ORACLE 数据库中所有列的注释 select table_name,column_name,comments from user_col_comments; -- 给表加ORACLE的注释 COMMENT ON TABLE aa10 IS '系统参数表'; -- 给列加ORACLE的注释 COMMENT ON COLUMN aa10.aaa100 IS '参数类别'; -- 查看表中列的属性,包括 数据类型,是否非空等 DESC aa10; -- 通过系统表,查看表中列的属性,包括 数据类型,是否非空等 SELECT table_name,COLUMN_ID,column_name,data_type,data_length,DATA_PRECISION,NULLABLE FROM user_tab_columns ORDER BY table_name,COLUMN_ID; --查看所有表空间 selecttablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name --查看未使用表空间大小 selecttablespace_name,sum(bytes)/1024/1024 from dba_free_space group bytablespace_name; -- 查看数据库中表、索引占用的数据库空间大小 SELECT * FROM user_segments; -- 查看所有表的记录数 CREATE TABLE table_count(table_name VARCHAR2(50),columns NUMBER(20)); -- 通过PB运行下面的语句,得到结果集,将结果集在PB下执行,最后提交 select 'insert into table_count values('''||table_name||''', (select count(1)from '||table_name||'));//'||comments from user_tab_comments; -- 所有表的记录都在table_count了 SELECT * FROM table_count; // 将ORACLE数据库的注释同步到PB中 代码开始 DELETE FROM PBCATCOL WHERE PBC_TNAM LIKE '%'; DELETE FROM PBCATTBL WHERE PBT_TNAM LIKE '%'; INSERT INTO PBCATTBL ( PBT_TNAM, PBT_OWNR , PBT_CMNT) SELECT ALL_TAB_COMMENTS.TABLE_NAME, ALL_TAB_COMMENTS.OWNER, ALL_TAB_COMMENTS.COMMENTS FROM ALL_TAB_COMMENTS WHERE ALL_TAB_COMMENTS.OWNER = 'LH' AND TABLE_NAME LIKE '%'; // 同步字段名 INSERT INTO PBCATCOL ( PBC_TNAM, PBC_OWNR, PBC_CNAM, PBC_LABL, PBC_CMNT, PBC_HDR) SELECT ALL_COL_COMMENTS.TABLE_NAME, ALL_COL_COMMENTS.OWNER, ALL_COL_COMMENTS.COLUMN_NAME, ALL_COL_COMMENTS.COMMENTS , ALL_COL_COMMENTS.COMMENTS , ALL_COL_COMMENTS.COMMENTS FROM ALL_COL_COMMENTS WHERE ALL_COL_COMMENTS.OWNER = 'LH' AND TABLE_NAME LIKE '%'; COMMIT; -- 将ORACLE数据库的注释同步到PB中 代码结束 --将PB注释同步到ORACLE中 select 'comment on table '||pbt_tnam||' is '''||pbt_cmnt||''';' from pbcattblwhere pbt_tnam not like 'PB%' UNION select 'comment on column '||pbc_tnam||'.'||pbc_cnam||' is '''||pbc_cmnt||''';'from pbcatcol where pbC_tnam not like 'PB%'; --查进程 select object_id,session_id,locked_mode from v$locked_object; selectt2.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; --杀进程 alter system kill session '3,6666'; oracle操作语句: 1.创建表 create table 表名( 列名1 类型, 列名2 类型 ); 2.修改类属性 alter table 表名 modify(列名 类型); 3.添加列 alter table 表名 add(列名 类型); 4.添加主键约束和非空约束 alter table 表名 add constraint pk_表名 primary key(列名); alter table 表名 modify(列名 not null); 5.删除主键约束 alter table 表名 drop primary key; alter table 表名 drop constraint pk_表名; 6.失效约束 alter table 表名 disable primary key; alter table 表名 disable constraint pk_表名; 7.有效约束 alter table 表名 enable primary key; alter table 表名 enable constraint pk_表名; 8.删除列 alter table 表名 drop column 列名; 9.设置某列不可用,然后删除 alter table 表名 set unused(列名); alter table 表名 drop unused columns; 10.修改表名 rename 表名1 to 表名2 alter 表名1 rename to 表名2; 11.截断表 truncate table 表名; 12.截断表保留行空间 truncate table 表名 resue storage; 13.查看表结构 desc table 表名; 14.删除表 drop table 表名; 15.插入记录 例:insert into 表名 values(内容1,内容2,内容3,内容4); 16.带参数对话方式插入行 例:insert into 表名 values(&列名1,&列名2); insert into 表名 values(内容1,内容2); 17.插入某几列记录 insert into 表名(列名1,列名2) values(内容1,内容2); 18.为列插入空值(其列不能为not null) insert into 表名 values(内容1,null,null); 19.创建表(包括主键及外键设置)方法一 create table 表名( 列名1 类型 constraint pk_表名 primary key, 列名2 类型 not null, 列名3 类型 constraint fk_表名 reference 表名(列名), 列名3 类型 constraint ck_表名 check(列名3 in(''内容1'',''内容2'',''内容3'')) ); 20.查询所有行 select * from 表名; 21.查询某几列 select 列名1,列名2 from 表名; 22.重复行消除 select distict 列名 from 表名; 23.where语句查询 select * from 表名 where 条件 order by 列名; (注:如number类型查出自动按升序排列,如要按降序排列,则select * from 表名 where 条件 order by 列名 desc;) 24.创建表,方法二 create table 表名( 列名1 类型 primary key, 列名2 类型 not null, 列名3 类型check(列名3 in('''','''','''')), 列名4 类型 refernce 表名(列名) ); 25.修改 列=‘?’的数据 update 表名 set (列=?) where 列=‘?’; 26.删除行 delete from 表名 where 条件; 27.事务处理 --事务处理 update 表名 set 列名(日期) = ''30-5月-98'' where 条件; savepoint mark1; delete from 表名 where 条件; savepoint mark2; rollback to savepoint mark1; rollback; 28.建立用户user1,密码为password 授予用户connect,resource的权限 connect角色用于登录 resource角色用于建表等. connect system/manager create user user1 identified bypassword; grant connect,resource to password; 29.数据控制语言 connect scott/tiger 30.把对表1查询和修改的权限授予user1 grant select,update on 表1 to user1; 31.把对表表1中列1和列2修改的权限授予user1 grant update(列1,列2) on 表1 to user1; 32.把对表表1查询的权限授予用户user1 并且user1用户还可以把这个权限授予别的用户(with grant option) grant select on 表1 to user1 with grant option; 33.从用户user1撤销对表1查询和修改的权限 revoke select,update on 表1 from user1;
posted @ 2011-11-04 09:55  木子非  阅读(695)  评论(0编辑  收藏  举报