1、 在计算机中,打开Oracle的连接程序,用新建的数据库管理员,进入Oracle控制的窗口上,鼠标左键单击服务器按钮,并选择SQL工作表,如下图所示。
2、接着,在Oracle服务器的窗口上,在输入窗口中输入SQL查询语句,并单击执行按钮,可以看到查询不到索引表,需要调整SQL语句,如下图所示。
3、然后,在SQL工作表的窗口上,输入查询索引表的SQL语句,可以作为参考,如下图所示。
4、 接着,在SQL工作表的窗口上,输查询索引表的SQL语句,并单击执行按钮,如下图所示。
5、然后,在SQL工作表的窗口上,可以看到SQL语句执行成功的提示信息,查询到用户的索引表中的字段,如下图所示。
6、接着,在SQL工作表的窗口上,修改索引表的名称,并单击执行按钮,如下图所示。
显示oracle数据库中某对应用户的所有的表以及表的相关信息(如:字段名、字段类型等等)。select from user_tab_comments;
select from user_tab_columns;
select from user_col_comments;去这里看看
数据结构被称为物理(存储)的数据结构在计算机中的表示()。它包括一个数据元素表示的关系的表示。
物理结构,也就是由Oracle数据库所使用的 *** 作系统的文件结构。对于数据库的物理结构文件,不同版本的Oracle,不同的 *** 作系统平台上的数据库文件存放的目录结构不同的物理结构
其作用可分为三类:
数据日志文件的文件
控制文件
数据文件,数据文件,用于存储数据库中的数据,如表,索引等。当读取数据时,系统首先读取的数据从数据库文件,并存储到数据缓冲器,SGA。
重做日志文件,重做日志文件
所有的记录在数据库中的信息。这是三种类型的文件,文件中最复杂的,而且要保证数据库的安全性和数据库的备份和恢复文件直接。
控制文件
控制文件是一个二进制文件,用来描述数据库的物理结构,数据库只需要一个控制文件,控制文件的内容,包括:
>同步需要恢复的数据文件和日志文件的信息标识数据库和数据库的名称,唯一标识
数据库,检查点数量
/
a>
如果有,请记得采纳为满意的答复,谢谢你!我祝你幸福的生活!
vaela1@dblink是你要查询的同义词对应的database link。
2表名是在db link里的表名,不是在你库中同义词里的表名,如下图:不是S_SALES_BLL,而是B_SALES_ALL。
3表名区分大小写。PS:表名如果是大写,你写小写,那就查询结果为空。use Roy --数据库
go
--2005实现数据库表字段属性统计(2000里的系统表sysproperties描述表不存在,2005里用sysextended_properties视图替代)
select
[表名]=cName,
[表说明]=isnull(f[value],''),
[列名]=aName,
[列序号]=aColumn_id,
[标识]=case when is_identity=1 then '√' else '' end,
[主键]=case when exists(select 1 from sysobjects x join sysindexes y on xType=N'PK' and xName=yName
join sysindexkeys z on zID=aObject_id and zindid=yindex_id and zColid=aColumn_id)
then '√' else '' end,
[类型]=bName,
[字节数]=case when a[max_length]=-1 and bName!='xml' then 'max/2G'
when bName='xml' then '2^31-1字节/2G'
else rtrim(a[max_length]) end,
[长度]=case when ColumnProperty(aobject_id,aName,'Precision')=-1 then '2^31-1'
else rtrim(ColumnProperty(aobject_id,aName,'Precision')) end,
[小数]=isnull(ColumnProperty(aobject_id,aName,'Scale'),0),
[是否为空]=case when ais_nullable=1 then '√' else '' end,
[列说明]=isnull(e[value],''),
[默认值]=isnull(dtext,'')
from
syscolumns a
left join
systypes b on auser_type_id=buser_type_id
inner join
sysobjects c on aobject_id=cobject_id and cType='U'
left join
syscomments d on adefault_object_id=dID
left join
sysextended_properties e on emajor_id=cobject_id and eminor_id=aColumn_id and eclass=1
left join
sysextended_properties f on fmajor_id=cobject_id and fminor_id=0 and fclass=1select aowner 所属用户,atable_name 表名,acolumn_name 字段名,adata_type 字段类型,a字段长度,a字段精度,a是否为空,a创建日期,a最后修改日期,
case when aowner=downer and atable_name=dtable_name and acolumn_name=dcolumn_name then '主键' else '' end 是否主键
from
(select aowner,atable_name,bcolumn_name,bdata_type,case when bdata_precision is null then bdata_length else data_precision end 字段长度,
data_scale 字段精度,
decode(nullable,'Y','√','N','×') 是否为空,ccreated 创建日期,clast_ddl_time 最后修改日期
from all_tables a,all_tab_columns b,all_objects c
where atable_name=btable_name and aowner=bowner
and aowner=cowner
and atable_name=cobject_name
and aowner='SCOTT'--此处用户名可以更改,但必须大写英文,也可以把这行删除
and cobject_type='TABLE') a
left join
(select aowner,atable_name,acolumn_name,aconstraint_name from user_cons_columns a, user_constraints b
where aconstraint_name = bconstraint_name and bconstraint_type = 'P') d
on aowner=downer and atable_name=dtable_name and acolumn_name=dcolumn_name
order by aowner,atable_name;
这几天做性能优化 网上找了些资料
有时候需要导出某用户下的所有table view sequence trigger等信息 下面的SQL可以将这些信息select出来
select from user_tables;
select from user_views;
select from user_sequences;
select from user_triggers;
想查找表的数据条数
试试这个
select t table_name t num_rows from user_tables t
如果没有值 那就创建个函数
代码
create or replace function count_rows(table_name in varchar
owner in varchar default null)
return number
authid current_user
IS
num_rows number;
stmt varchar ( );
begin
if owner is null then
stmt := select count() from ||table_name|| ;
else
stmt := select count() from ||owner|| ||table_name|| ;
end if;
execute immediate stmt into num_rows;
return num_rows;
end
再执行查询
lishixinzhi/Article/program/Oracle/201311/18185
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)