oracle查看表和表字段+常用命令

合集下载

oracle中查询表的信息,包括表名,字段名,字段类型,主键(精)

oracle中查询表的信息,包括表名,字段名,字段类型,主键(精)

通过搜索摸索,总结了一下 oracle 中查询表的信息,包括表名,字段名,字段类型,主键, 外键唯一性约束信息,索引信息查询 SQL 如下,希望对大家有所帮助:1、查询出所有的用户表select * from user_tables 可以查询出所有的用户表select owner,table_name from all_tables; 查询所有表,包括其他用户表通过表名过滤需要将字母作如下处理select * from user_tables where table_name = upper('表名 '因为无论你建立表的时候表名名字是大写还是小写的, create 语句执行通过之后,对应的 user_tables表中的 table_name字段都会自动变为大写字母, 所以必须通过内置函数 upper 将字符串转化为大写字母进行查询, 否则, 即使建表语句执行通过之后, 通过上面的查询语句仍然查询不到对应的记录。

2、查询出用户所有表的索引select * from user_indexes3、查询用户表的索引 (非聚集索引 :select * from user_indexes where uniqueness='NONUNIQUE'4、查询用户表的主键 (聚集索引 :select * from user_indexes where uniqueness='UNIQUE'5、查询表的索引select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name andt.table_name='NODE'6、查询表的主键select cu.* from user_cons_columns cu, user_constraints au wherecu.constraint_name = au.constraint_name andau.constraint_type = 'P' AND cu.table_name = 'NODE'7、查找表的唯一性约束(包括名称,构成列:select column_name from user_cons_columns cu, user_constraints au wherecu.constraint_name=au.constraint_name andcu.table_name='NODE'8、查找表的外键select * from user_constraints c where c.constraint_type = 'R' andc.table_name='STAFFPOSITION'查询外键约束的列名:select * from user_cons_columns cl where cl.constraint_name = 外键名称查询引用表的键的列名:select * from user_cons_columns cl where cl.constraint_name = 外键引用表的键名9、查询表的所有列及其属性方法一:select * from user_tab_columns where table_name=upper('表名 ';方法二:select cname,coltype,width from col where tname=upper('表名 ';;10. 查询一个用户中存在的过程和函数select object_name,created,status from user_objectswhere lower(object_type in ('procedure','function';11. 查询其它角色表的权限select * from role_tab_privs ;。

oracle常用查询语句

oracle常用查询语句

oracle常用查询语句Oracle是一种关系型数据库管理系统,常用于数据存储和查询。

下面列举了10个常用的Oracle查询语句。

1. SELECT语句SELECT语句是Oracle中最常用的查询语句之一。

它用于从数据库表中检索数据。

可以指定要查询的列、要查询的表以及任何过滤条件。

例如:SELECT * FROM employees;2. WHERE子句WHERE子句用于在SELECT语句中添加过滤条件。

可以使用各种运算符(如等于、大于、小于等)来指定条件。

例如:SELECT * FROM employees WHERE salary > 50000;3. ORDER BY子句ORDER BY子句用于按指定的列对结果进行排序。

可以指定升序(ASC)或降序(DESC)。

例如:SELECT * FROM employees ORDER BY hire_date DESC;4. GROUP BY子句GROUP BY子句用于根据一个或多个列对结果进行分组。

通常与聚合函数(如SUM、COUNT、AVG等)一起使用。

例如:SELECT department_id, COUNT(*) FROM employees GROUP BYdepartment_id;5. JOIN操作JOIN操作用于从多个表中检索数据,并根据指定的关联条件将它们合并在一起。

常见的JOIN类型包括内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)等。

例如:SELECT employees.employee_id, departments.department_name FROM employees INNER JOIN departments ON employees.department_id = departments.department_id;6. 子查询子查询是嵌套在其他查询语句中的查询。

oracle查询表语句

oracle查询表语句

在Oracle数据库中,查询表的基本语法是使用SELECT语句。

以下是查询表的一些常见示例:
1. 查询表中的所有数据:
```sql
SELECT * FROM 表名;
```
2. 查询表中的特定字段数据:
```sql
SELECT 字段名1, 字段名2 FROM 表名;
```
3. 查询表中的字段并使用别名显示:
```sql
SELECT 字段名1 AS 别名1, 字段名2 AS 别名2 FROM 表名;
```
4. 查询表中的字段并去除重复记录:
```sql
SELECT DISTINCT 字段名1, 字段名2 FROM 表名;
```
5. 查询表中的字段并拼接字符串显示:
```sql
SELECT 字段名1 || '字符串' || 字段名2 FROM 表名;
```
6. 查看表的描述信息:
```sql
DESCRIBE 表名;
```
这些是查询表的一些基本示例,你可以根据具体的需求进行调整和扩展。

请确保将上述语句中的"表名"替换为你实际要查询的表的名称,并根据需要指定适当的字段和别名。

oracle查询所有表和字段

oracle查询所有表和字段

select * from all_users //查询所有用户
select * from dba_users //查询所有用户
select name,dbid from v$database; //查询数据库名和它的ID
select * from er_tab_columns; //查询表名 ,并显示列名
from (select a.table_name r1, a.column_name r2, ments r3
from user_col_comments a),
(select t.table_name r4, ments r5 from user_tab_comments t)
where r4 = r1
以上就是oracle查询用户所有表的语句介绍。
1பைடு நூலகம்select table_name from all_tables;
所有的表明
1.select table_name from user_all_tables;
Oracle查询语句中用户的所有的表
describe 表名 //查询表结构
select * from er_tab_columns where table_name=表名
查询指定表名的字段
2: 查询数据库参数
1.show parameter db;
3:Oracle查询语句查询数据库的实例名
一下是转贴的sql语句的帖子.
select * from user_objects; //查询所有的表
select * from dba_tables; //查询所有的表
select * from all_tables; //查询所有的表

oracle查询表语句

oracle查询表语句

oracle查询表语句
摘要:
1.Oracle 查询表语句概述
2.Oracle 查询表语句的基本结构
3.Oracle 查询表语句的例子
正文:
【1.Oracle 查询表语句概述】
Oracle 查询表语句是Oracle 数据库中用来查询数据的SQL 语句。

在Oracle 数据库中,我们可以使用查询表语句来获取所需的数据,以便进行数据分析和处理。

Oracle 查询表语句具有丰富的功能和高度的灵活性,可以根据实际需求编写合适的查询语句。

【2.Oracle 查询表语句的基本结构】
Oracle 查询表语句的基本结构如下:
```
SELECT column1, column2,...
FROM table_name
WHERE condition;
```
其中:
- `SELECT`:表示查询语句的开始
- `column1, column2,...`:表示要查询的列名,多个列名之间用逗号分隔
- `FROM`:表示查询数据来源的表名
- `WHERE`:表示查询条件,可以筛选出满足条件的数据
【3.Oracle 查询表语句的例子】
假设我们有一个名为`employees`的表,包含以下列:`id, name, age, salary`,现在我们想要查询年龄大于30 且薪资高于5000 的员工信息,可以使用如下查询语句:
```
SELECT *
FROM employees
WHERE age > 30 AND salary > 5000;
```
上述语句将返回满足条件的员工信息。

当然,我们可以根据实际需求调整查询条件和查询的列,以获取所需的数据。

Oracle表的基本查询

Oracle表的基本查询

表旳基本查询1、查看表构造Desc dept;2、查看所有列Select * from dept;3、查看指定列Select ename,sal,job,deptno from emp;4、如何取消反复Select distinct deptno,job from emp;5、set timing on;显示查询时间6、使用算数体现式显示每个雇员旳年工资Select (sal+nvl(comm,0))*12 as 年工资,ename as 姓名from emp;使用列旳别名Select eanme “姓名”,sal*12 as “年收入”from emp;如何使用null值使用nvl函数来解决如何连接字符串(||)Select ename || ‘is a ’ || job from emp;7、使用where子句如何显示工资高于3000旳员工select * from emp where sal>3000;如何查找1982.1.1后入职旳员工select * from emp where hiredate>'1-1月-1982';如何显示工资在到2500旳员工状况select * from emp where sal> and sal<2500;8、如何使用like操作符%:表达任意0到多种字符_:表达任意单个字符如何显示首字符为S旳员工姓名和工资Select ename,sal from emp where ename like ‘S%’如何显示第三个字符为大写O旳所有员工旳姓名和工资Select ename,sal from emp where ename like ‘__o%’;9、在where条件中使用in如何显示empno为123,345,80…旳雇员状况Select * from emp where empno in (123,345,);10、使用in null 旳操作符如何显示没有上级旳雇员旳状况Select * from emp where mgr is null;11、使用逻辑操作符号查询工资高于500或是岗位为MANAGER旳员工,同步还要满足他们旳姓名首写字母为大写旳J?select * from emp where (sal>500 or job='MANAGER') andename like 'J%';12、使用order by 子句如何按照工资旳从低到高旳顺序显示雇员旳信息?select * from emp order by sal;按照部门号升序而雇员旳工资降序排列?select * from emp order by deptno asc,sal desc;13、使用列旳别名排序Select ename, sal*12 “年薪” from emp order by “年薪” asc;表复杂查询14、数据分组-max,min avg,sum,count如何显示所有员工中最高工资和最低工资?Select max(sal),min(sal) from emp;显示所有员工旳平均工资和工资总和?select avg(sal+nvl(comm,0)),sum(sal+nvl(comm,0)) from emp;计算共有多少员工?Select count(*) from emp;扩展规定:请显示工资最高旳员工旳名字,工作岗位?select ename,job from emp where sal=(select max(sal+nvl(comm,0)) from emp);请显示工资高于平均工资旳员工信息?select * from emp where sal>(select avg(sal) from emp);15、group by 和having子句group by 用于对查询旳成果分组记录,having 子句用于限制分组显示成果。

常用查询Oracle的表,视图,存储过程,用户等SQL命令

常用查询Oracle的表,视图,存储过程,用户等SQL命令

常⽤查询Oracle的表,视图,存储过程,⽤户等SQL命令有时候需要导出某⽤户下的所有table、view、sequence、trigger等信息,下⾯的SQL可以将这些信息select出来:select * from user_tables;select * from user_views;select * from user_sequences;select * from user_triggers;查看当前⽤户的缺省表空间 SQL>select username,default_tablespace from user_users; 查看当前⽤户的⾓⾊ SQL>select * from user_role_privs; 查看当前⽤户的系统权限和表级权限 SQL>select * from user_sys_privs; SQL>select * from user_tab_privs; 查看⽤户下所有的表 SQL>select * from user_tables;1、⽤户 查看当前⽤户的缺省表空间 SQL>select username,default_tablespace from user_users; 查看当前⽤户的⾓⾊ SQL>select * from user_role_privs; 查看当前⽤户的系统权限和表级权限 SQL>select * from user_sys_privs; SQL>select * from user_tab_privs; 显⽰当前会话所具有的权限 SQL>select * from session_privs; 显⽰指定⽤户所具有的系统权限 SQL>select * from dba_sys_privs where grantee=’GAME’;2、表 查看⽤户下所有的表 SQL>select * from user_tables; 查看名称包含log字符的表 SQL>select object_name,object_id from user_objects where instr(object_name,’LOG’)>0; 查看某表的创建时间 SQL>select object_name,created from user_objects where object_name=upper(‘&table_name’); 查看某表的⼤⼩ SQL>select sum(bytes)/(1024*1024) as “size(M)” from user_segments where segment_name=upper(‘&table_name’); 查看放在ORACLE的内存区⾥的表 SQL>select table_name,cache from user_tables where instr(cache,’Y')>0;3、索引 查看索引个数和类别 SQL>select index_name,index_type,table_name from user_indexes order by table_name; 查看索引被索引的字段 SQL>select * from user_ind_columns where index_name=upper(‘&index_name’); 查看索引的⼤⼩ SQL>select sum(bytes)/(1024*1024) as “size(M)” from user_segments where segment_name=upper(‘&index_name’);4、序列号 查看序列号,last_number是当前值 SQL>select * from user_sequences;5、视图 查看视图的名称 SQL>select view_name from user_views; 查看创建视图的select语句 SQL>set view_name,text_length from user_views; SQL>set long 2000; 说明:可以根据视图的text_length值设定set long 的⼤⼩ SQL>select text from user_views where view_name=upper(‘&view_name’);6、同义词 查看同义词的名称 SQL>select * from user_synonyms;7、约束条件 查看某表的约束条件 SQL>select constraint_name, constraint_type,search_condition, r_constraint_name from user_constraints where table_name = upper(‘&table_name’); SQL>select c.constraint_name,c.constraint_type,cc.column_name from user_constraints c,user_cons_columns cc where c.owner = upper(‘&table_owner’) and c.table_name = upper(‘&table_name’) and c.owner = cc.owner and c.constraint_name = cc.constraint_name order by cc.position;8、存储函数和过程 查看函数和过程的状态 SQL>select object_name,status from user_objects where object_type=’FUNCTION’; SQL>select object_name,status from user_objects where object_type=’PROCEDURE’; 查看函数和过程的源代码 SQL>select text from all_source where owner=user and name=upper(‘&plsql_name’);。

oracle常用查询命令

oracle常用查询命令

/*oracle查询用户所有表的语句介绍*/
-- 查询所有用户的表,视图等
select * from all_tab_comments
--查询本用er_tab_comments
--查询所有用户的表的列名和注释
select * from all_col_comments
--查询本用户的表的列名和注释
select * from user_col_comments
--查询所有用户的表的列名等信息(详细但是没有备注)
select * from all_tab_columns
--查询本用户的表的列名等信息(详细但是没有备注)
select * from user_tab_columns
FROM User_Col_Comments a),
(SELECT t.Table_Name R4, ments R5
FROM User_Tab_Comments t)
WHERE R4 = R1
--查询所有表名
select * from user_objects; //查询所有的表
AND Table_Name NOT LIKE '%1%') Table_Nallable
WHERE Table_Column.Column_Name = Table_Nallable.Column_Name
AND Table_Column.Table_Name = Table_Nallable.Table_Name;
--Oracle查询语句查询数据库的实例名
select instance_name from v$instance;
--数据库域名(数据库安装结束后,如果要知道正在运行数据库是否有域名以及数据库域名名称可以用)

oracle 查询表的几种方法

oracle 查询表的几种方法

标题:Oracle查询表的几种方法随着大数据时代的到来,数据库查询成为了日常工作中必不可少的一部分。

在Oracle数据库中,查询表是我们使用频率最高的操作之一。

本文将介绍Oracle查询表的几种方法,帮助读者更好地理解和应用Oracle数据库。

一、使用SELECT语句查询单个表在Oracle数据库中,通过使用SELECT语句可以查询单个表的数据。

SELECT语句的基本语法如下:SELECT column1, column2, ...FROM table_nameWHERE condition;其中,column1, column2表示要查询的列名,table_name表示表名,condition表示查询条件。

二、使用JOIN语句查询多个表在实际应用中,我们经常需要同时查询多个表的数据。

这时可以使用JOIN语句来实现。

在Oracle数据库中,JOIN语句有多种类型,包括INNER JOIN、LEFT JOIN、RIGHT JOIN等,根据实际需求选择合适的JOIN类型。

JOIN语句的基本语法如下:SELECT column1, column2, ...FROM table1INNER JOIN table2 ON condition;其中,table1、table2表示要查询的表名,condition表示连接条件。

三、使用子查询查询表有时候我们需要在查询语句中嵌套查询,这时可以使用子查询来实现。

子查询是指在一个查询语句中嵌套另一个查询语句,将子查询的结果作为外层查询的条件使用。

子查询的基本语法如下:SELECT column1, column2, ...FROM table_nameWHERE column1 IN (SELECT column1 FROM another_table);四、使用EXISTS子查询查询表除了常规的子查询外,Oracle数据库还支持EXISTS子查询。

EXISTS子查询是一种特殊的子查询,用来判断子查询中是否存在符合条件的数据,如果存在则返回TRUE,否则返回FALSE。

oracle表结构查询语句

oracle表结构查询语句

oracle表结构查询语句Oracle是一种关系型数据库管理系统,它具有强大的数据操作和查询功能。

在Oracle中,表是存储数据的基本单位,表结构查询语句用于查看表的结构信息,包括表名、字段名、字段类型、字段长度等。

下面列举了10个符合要求的Oracle表结构查询语句。

1. 查询指定表的所有字段名和字段类型```sqlSELECT COLUMN_NAME, DATA_TYPEFROM ALL_TAB_COLUMNSWHERE TABLE_NAME = '表名'```这条语句通过查询ALL_TAB_COLUMNS视图,可以获取指定表的所有字段名和字段类型。

2. 查询指定表的所有字段名和字段长度```sqlSELECT COLUMN_NAME, DATA_LENGTHFROM ALL_TAB_COLUMNSWHERE TABLE_NAME = '表名'```这条语句通过查询ALL_TAB_COLUMNS视图,可以获取指定表的所有字段名和字段长度。

3. 查询指定表的主键字段名```sqlSELECT COLUMN_NAMEFROM ALL_CONSTRAINTS C, ALL_CONS_COLUMNS CC WHERE C.TABLE_NAME = '表名'AND C.CONSTRAINT_TYPE = 'P'AND C.CONSTRAINT_NAME = CC.CONSTRAINT_NAMEAND CC.TABLE_NAME = '表名'```这条语句通过查询ALL_CONSTRAINTS和ALL_CONS_COLUMNS 视图,可以获取指定表的主键字段名。

4. 查询指定表的外键字段名和关联表名```sqlSELECT A.COLUMN_NAME, B.TABLE_NAMEFROM ALL_CONSTRAINTS A, ALL_CONSTRAINTS B WHERE A.TABLE_NAME = '表名'AND A.CONSTRAINT_TYPE = 'R'AND A.R_CONSTRAINT_NAME = B.CONSTRAINT_NAME AND B.TABLE_NAME != '表名'```这条语句通过查询ALL_CONSTRAINTS视图,可以获取指定表的外键字段名和关联表名。

查看Oracle_表名、字段名、注释、进程及杀进程等常用语句

查看Oracle_表名、字段名、注释、进程及杀进程等常用语句

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,NULLABLEFROM user_tab_columnsORDER BY table_name,COLUMN_ID;-- 查看数据库中表、索引占用的数据库空间大小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_MENTSFROM ALL_TAB_COMMENTSWHERE 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_MENTS ,ALL_COL_MENTS ,ALL_COL_MENTSFROM ALL_COL_COMMENTSWHERE ALL_COL_COMMENTS.OWNER = 'LH'AND TABLE_NAME LIKE '%';COMMIT;-- 将ORACLE数据库的注释同步到PB中代码结束--将PB注释同步到ORACLE中select 'comment on table '||pbt_tnam||' is '''||pbt_cmnt||''';' from pbcattbl where pbt_tnam not like 'PB%'UNIONselect '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;select ername,t2.sid,t2.serial#,t2.logon_timefrom v$locked_object t1,v$session t2where t1.session_id=t2.sid order by t2.logon_time;--杀进程alter system kill session '3,6666';。

oracle 查询表的建表语句

oracle 查询表的建表语句

一、概述在日常的数据库管理工作中,我们经常需要查询某张表的建表语句,以便了解该表的结构和属性。

Oracle作为全球领先的数据库管理系统,其查看表的建表语句的操作方法值得探讨和总结。

二、使用DESCRIBE命令1. DESCRIBE是Oracle SQL中用来查看表结构的命令,可以用来查看表的列名、数据类型、长度等信息。

示例如下:DESCRIBE 表名;2. 通过DESCRIBE命令查看表的结构,可以得到表的列名和数据类型等信息,但无法直接得到创建该表的完整SQL语句。

三、使用用户对象查询1. Oracle中的用户对象查询是一种通过系统表查看数据库对象信息的方式。

2. 可以通过以下SQL语句查看指定表的建表语句:SELECT dbms_metadata.get_ddl('TABLE', '表名', '用户名') FROM dual;其中,'表名'为要查询的表名,'用户名'为表所属的用户名称。

四、使用数据字典查询1. 在Oracle中,数据字典是一个包含了数据库对象、用户信息、权限、表空间等数据库元数据的系统表。

2. 可以通过以下SQL语句查询指定表的建表语句:SELECT dbms_metadata.get_ddl('TABLE', '表名') FROM dual;其中,'表名'为要查询的表名。

五、使用SQL Developer工具1. SQL Developer是Oracle冠方推出的数据库管理工具,提供了丰富的表结构查看和管理功能。

2. 在SQL Developer中,可以通过右键点击表名,选择“SQL”,然后选择“生成DDL”来查看表的建表语句。

六、总结在Oracle数据库中,通过DESCRIBE命令、用户对象查询、数据字典查询以及SQL Developer工具,都可以方便地查询表的建表语句。

--oracle上一些查询表和字段语句

--oracle上一些查询表和字段语句

-- 去重语句
1 delete from ldc_data.tb_xw_lc_xhzwfx_02 t
2 where exists (
Байду номын сангаас
3
select *
4
from ldc_data.tb_xw_lc_xhzwfx_02 t2
5
where
6
tn_id=tn_id
7
and t.prd_inst_id=t2.prd_inst_id
9
where
10
t.tablespace_name = s.default_tablespace
11
group by
12
t.tablespace_name
13 ) tt,(
14
select
15
sum(t.bytes) / 1024 / 1024 / 1024 as use_gb
16
from user_segments t
8
and t.rowid>t2.rowid
9
)
10 ;
-- 循环
1 begin 2 for cu_latn in (select latn_id from eda.tb_b_dim_latn) loop 3 execute immediate 'insert into eda.tem_chenbao_hlr_day_20200703 4 select /*+ parallel(a,8) */ 5 20200703 day_id,tn_id,tn_name,b.order_id,count(distinct a.prd_inst_id) kj,'||cu_tn_id||' old_latn_id 6 from tb_b_ft_hlr_day_'||cu_tn_id||' a, 7 tb_b_dim_latn_city b

oracle数据库常用操作指令

oracle数据库常用操作指令

oracle数据库常用操作指令Oracle数据库常用的操作命令Oracle数据库常用的操作命令常用的数据字典表:tab,user_tables,user_objects,user_catalog,user_constraints,user_cons_col umns 1、视图在所有存储过程(数据字典表)中查询是否有某一字符串的,,,语句select * from all_source where type='PROCEDURE' and lower(text) like '%student %'select * from user_source where lower(text) like '%dbms_%'select tname,cname,coltype,width from col where tname='STUDENT'select * from all_tables where owner ='OEMS'select * from all_constraints where constraint_name ='JWTHESIS_R_THESISWRITEBATCH_ID'2、sqlplus连接oracleOracle安装后默认密码:sys(change_on_install),system(manager),internal(oracle),scott(tiger) connect system/manager as sysdba;(as sysoper)connect internal/oracle AS SYSDBA;(scott/tiger)connect sys/change_on_install as sysdba;3、查看当前连接数:select * from v$license查看当前的所有数据库: select * from v$database;查看当前所有的数据库实例: select * from v$instance查看当前库的所有数据表all_tables(用户表user_tables):select * from all_tables where table_name like 'T%' and owner='SYS';查看当前数据库连接用户 sqlplus Show user;或者select uid,user from dual;查看当前数据库系统时间 select sysdate from dual;查看数据库表结构字段: desc v$database;查看哪些用户拥有SYSDBA、SYSOPER权限: select * from v_$PWFILE_USERS;4. 怎样删除用户会话SELECT * FROM v$session WHERE lower(USERNAME) = 'oems';ALTER SYSTEM KILL SESSION 'SID, SERIAL#'; 5、改变一个对象的名字,执行RENAME语句,改变一个表、视图、序列或同义词RENAME dept TO detail_dept;6、检查用户是否将SYSTEM 表空间作为缺省表空间SELECT USERNAME,DEFAULT_TABLESPACE FROM DBA_USERS WHEREDEFAULT_TABLESPACE ='SYSTEM';7、怎样查找产生锁的SQL 语句select ername username,a.sid sid,a.owner||'.'||a.objectobject,s.lockwait,t.sql_textSQLfrom v$sqltext t,v$session s,v$access awhere t.address=s.sql_address and t.hash_value=s.sql_hash_value and s.sid = a.sid anda.owner != 'SYS'and upper (substr(a.object,1,2)) != 'V$'8、添加注释到表中,用COMMENT语句添加注释到一个表或列中(注释通过数据字典视图查看CALL_COL_COMMENTS,CUSER_COL_COMMENTS,CALL_TAB_COMMENTS,CUSER_TAB_COM MENTS)COMMENT ON TABLE employees IS 'Employee Information' 9、系统日期sysdate显示,环境变量nls_date_format设置日期显示格式alter session set nls_date_format='yyyy"天"mm"月"dd"日"' --'yyyy-mm-dd hh24:mi:ss'10、日期显示的类型Selectsysdate,to_char(sysdate,'yyyy.mm.dd')col1,to_char(sysdate,'dd-mon-yyyy hh24:mi:ss day')col2from dualSelect trunc(sysdate) + 0.5 col from dualSelect trunc(sysdate) ||' 12:00:00' col From dual11、DBA权限--典型的DBA权限----系统权限----授权的操作--create user 受让人可以创建其他 oracle 用户 (需要有DBA角色权限)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

user_tab_columns:
table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等
all_tab_columns :
ower,table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等
user_tab_comments:table_name,table_type,comments
相应的还有dba_tab_comments,all_tab_comments,这两个比user_tab_comments多了ower列。
获取字段注释:
select * from user_col_comments
dba_tab_columns:
ower,table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等
获取表注释:
select * from user_tab_comments
系统将自动进行提交,这就是自动提交。其格式为: SQL>SET AUTOCOMMIT ON;
COMMIT / ROLLBACK这两个命令用的时候要小心。 COMMIT / ROLLBACK 都是用在执行 DML语句(INSERT / DELETE / UPDATE / SELECT )之后的。DML 语句,执行完之后,处理的数据,都会放在回滚段中(除了 SELECT 语句),等待用户进行提交(COMMIT)或者回滚 (ROLLBACK),当用户执行 COMMIT / ROLLBACK后,放在回滚段中的数据就会被删除。
数据操纵语言,SQL中处理数据等操作统称为数据操纵语言 ;
INSERT---数据的插入
DELETE---数据的删除
UPDATE---数据的修改
SELECT---数据的查询
DCL(Data Control Language)
数据控制语言,用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等;
select table_name from dba_tables where owner='用户名'
user_tables:
table_name,tablespace_name,last_analyzed等
dba_tables:
ower,table_name,tablespace_name,last_analyzed等
all_tables:
ower,table_name,tablespace_name,last_analyzed等
all_objects:
ower,object_name,subobject_name,object_id,created,last_ddl_time,timestamp,status等
(SELECT 语句执行后,数据都存在共享池。提供给其他人查询相同的数据时,直接在共享池中提取,不用再去数据库中提取,提高了数据查询的速度。)
所有的 DML 语句都是要显式提交的,也就是说要在执行完DML语句之后,执行 COMMIT 。而其他的诸如 DDL 语句的,都是隐式提交的。也就是说,在运行那些非 DML 语句后,数据库已经进行了隐式提交,例如 CREATE TABLE,在运行脚本后,表已经建好了,并不在需要你再进行显式提交。
1. DDL(Data Definition Language)
数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言 ;
CREATE---创建表
ALTER---修改表
DROP---删除表
2. DML(Data Manipulation Language)
user_col_comments:table_name,column_name,comments
相应的还有dba_col_comments,all_col_comments,这两个比user_col_comments多了ower列
从SQL语言的分类谈COMMIT和ROLLBACK的用法 从功能上划分,SQL语言可以分为DDL,DML和DCL三大类。
用SQL命令间接完成的提交为隐式提交。这些命令是:
ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,
EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。
IT设置为ON,则在插入、修改、删除语句执行后,
获取表字段:
select * from user_tab_columns where Table_Name='用户表';
select * from all_tab_columns where Table_Name='用户表';
select * from dba_tab_columns where Table_Name='用户表';
GRANT---授权。
ROLLBACK---回滚
COMMIT---提交。
提交数据有三种类型:显式提交、隐式提交及自动提交。下面分别说明这三种类型。
(1) 显式提交
用COMMIT命令直接完成的提交为显式提交。
(2) 隐式提交
获取表:
select table_name from user_tables; //当前用户的表
select table_name from all_tables; //所有用户的表
select table_name from dba_tables; //包括系统表
相关文档
最新文档