`

Oracle操作语句集锦(1)

 
阅读更多

-- 查看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;

分享到:
评论

相关推荐

    Oracle sql 语句集锦

    根据给定的文件信息,以下是对Oracle SQL语句集锦中的关键知识点的详细解析: ### Oracle SQL基础操作 #### 数据定义语言(DDL) - **创建表(Create Table)**: `CREATE TABLE`语句用于在数据库中创建一个新的表...

    Oracle操作语句集锦

    ### Oracle操作语句集锦详解 #### 一、Oracle 命令行工具与基本语法 **1. 启动 SQLPlus:** ```bash sqlplus /nolog ``` 此命令用于启动 SQLPlus 工具,不进行任何登录操作。 **2. 连接到数据库:** ```bash conn...

    Oracle查询语句集锦

    本资源集锦涵盖了日期查询、嵌套查询和多表查询等多个方面,对于学习和提升Oracle SQL技能大有裨益。 1. **日期查询**:在Oracle中,日期类型数据的处理是非常常见的。你可以使用内置的日期函数如`SYSDATE`获取当前...

    Oracle电子书资料集锦

    Oracle电子书资料集锦是一个包含了丰富Oracle学习资源的压缩文件,主要聚焦于Oracle数据库系统的学习与进阶。这个集合可能适合数据库管理员(DBA)、软件开发者以及对Oracle技术感兴趣的学习者。下面,我们将深入...

    oracle的开发需要的sql语句集锦

    以下是一些在Oracle开发中常用的SQL语句及其详细解释: 1. **数据查询(SELECT语句)**: - `SELECT column1, column2 FROM table_name;`:基本的查询语句,获取指定列的数据。 - `WHERE condition;`:定义查询...

    oracle面试题集锦

    Oracle 面试题集锦 oracle 是一种关系数据库管理系统,它提供了强大的数据存储和管理功能。本文将从多个方面对 oracle 的知识点进行总结,包括查找部门的前 2 名、事务概念、触发器的作用、实现索引的方式、view ...

    经典SQL语句集锦,据说是经典

    以上就是SQL中的一些经典语句和操作,它们构成了SQL的基础,是进行数据库操作的关键。理解并熟练掌握这些语句,能有效地进行数据管理、分析和查询。在实际应用中,还需要结合具体数据库系统(如MySQL, PostgreSQL, ...

    sql21天自学通和oracle常用函数集锦

    通过"SQL21天自学通",你将逐步掌握这些概念和操作,而"Oracle常用函数集锦"将为使用Oracle数据库提供便利,帮助你更高效地处理Oracle中的数据。学习过程中,理论结合实践,多做练习,理解每个函数的实际应用场景,...

    Oracle面试题集锦

    5. **检查表结构**:使用`DESCRIBE`命令或通过`DBMS_METADATA.GET_DDL`包获取DDL语句来查看表结构。 6. **查看数据库错误日志**:通过`alert log`可以查看数据库引擎的错误信息。 7. **TRUNCATE与DELETE**:...

    oracle面试题集锦.pdf

    可以使用 utlxplan.sql 建立 plan 表针对特定 SQL 语句,然后使用 explain plan set statement_id = 'tst1' into plan_table 运行 utlxplp.sql 或 utlxpls.sql察看 explain plan。 18. 增加 buffer cache 命中的...

    oracle存储过程集锦

    Oracle存储过程是数据库管理系统中的一种重要工具,它允许程序员或数据库管理员在数据库中定义一系列复杂的SQL语句和PL/SQL块,以便于执行批量处理、数据操作和业务逻辑。这个"Oracle存储过程集锦"包含了丰富的学习...

    Oracle语句集锦

    - **查看执行计划**:使用`@ORACLE_HOME/rdbms/admin/utlxplai.sql`可以查看SQL语句的执行计划。 - **性能调优**:通过`SQL> set timing on`可以在执行SQL时显示时间,帮助优化查询性能。 - **终止会话**:使用`SQL>...

    oracle企业面试题集锦.pdf

    "Oracle企业面试题集锦.pdf" Oracle 企业面试题集锦旨在为应试者提供一个系统的 Oracle 面试题集锦,涵盖了 Oracle 的各种知识点,从宏观到微观,全面介绍了 Oracle 的特点、优点和使用方法。 一、Oracle 和 SQL ...

    Oracle企业面试题集锦

    以上就是从提供的信息中总结出的Oracle企业面试题集锦中的核心知识点,涵盖了Oracle与SQL Server的区别、Oracle特性、数据库管理、性能优化等多个方面。这些知识点对于深入理解和掌握Oracle数据库的使用和管理具有...

    SQL语句集锦.rar

    查询 时间1.txt 查询替换字符串.sql 模糊查寻.txt 类似于树查询.txt 练习.txt 获得数据库中表字段的名字 行转列附加.txt 连接字段输出.txt 遍历数据库.txt 50个常用sql语句.txt not exists用法实例.txt ...

    oracle_技巧集锦.doc

    ### Oracle技巧集锦知识点详解 #### 一、Oracle安装与配置 **1. Oracle安装后的初始口令** - **Internal**: `internal/oracle` - **SYS**: `sys/change_on_install` - **SYSTEM**: `system/manager` - **SCOTT**:...

    黄远邦_复杂而有趣的ORACLE优化案例集锦

    ### 黄远邦_复杂而有趣的ORACLE优化案例集锦 #### 概述 黄远邦,作为北京中亦科技的一位资深Oracle DBA,在Oracle数据库管理领域有着丰富的经验。他特别擅长数据中心的大规模Oracle运维、SQL优化以及整体性能优化,...

Global site tag (gtag.js) - Google Analytics