‘壹’ sql2008怎么查看表的内容
1、首先登录sql server服务器,输入正确的用户名和密码。
(1)sql字典表能查看吗扩展阅读:
一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据的记录(行)。
下面的例子是一个名为 "Persons" 的表:
Id
LastName
FirstName
Address
City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
上面的表包含三条记录(每一条对应一个人)和五个列(Id、姓、名、地址和城市)。
SQL 语句
您需要在数据库上执行的大部分工作都由 SQL 语句完成。
下面的语句从表中选取 LastName 列的数据:
SELECT LastName FROM Persons
结果集类似这样:
LastName
Adams
Bush
Carter
‘贰’ 怎么用pl/sql数据字典user_tables查询用户下所有的表+序列
SELECT * FROM USER_OBJECTS WHERE object_type IN ('TABLE','SEQUENCE');
‘叁’ 如何通过sql 查看表的结构
在查询分析器中用SQL语句
‘肆’ (转)如何有效的利用数据字典进行查询
数据字典名称是大写的英文字符。 数据字典里存有用户信息、用户的权限信息、所有数据对象信息、表的约束条件、统计分析数据库的视图等。 我们不能手工修改数据字典里的信息。 一、用户 查看当前用户的缺省表空间 SQLselect username,default_tablespace from user_users; 查看当前用户的角色 SQLselect * from user_role_privs; 查看当前用户的系统权限和表级权限 SQLselect * from user_sys_privs; SQLselect * from user_tab_privs; 二、表 查看用户下所有的表 SQLselect * from user_tables; 查看名称包含log字符的表 SQLselect object_name,object_id from user_objects where instr(object_name,'LOG')0; 查看某表的创建时间 SQLselect object_name,created from user_objects where object_name=upper('&table_name'); 查看某表的大小 SQLselect sum(bytes)/(1024*1024) as "size(M)" from user_segments where segment_name=upper('&table_name'); 查看放在ORACLE的内存区里的表 SQLselect table_name,cache from user_tables where instr(cache,'Y')0; 三、索引 查看索引个数和类别 SQLselect index_name,index_type,table_name from user_indexes order by table_name; 查看索引被索引的字段 SQLselect * from user_ind_columns where index_name=upper('&index_name'); 查看索引的大小 SQLselect sum(bytes)/(1024*1024) as "size(M)" from user_segments where segment_name=upper('&index_name'); 四、序列号 查看序列号,last_number是当前值 SQLselect * from user_sequences; 五、视图 查看视图的名称 SQLselect view_name from user_views; 查看创建视图的select语句 SQLset view_name,text_length from user_views; SQLset long 2000; 说明:可以根据视图的text_length值设定set long 的大小 SQLselect text from user_views where view_name=upper('&view_name'); 六、同义词 查看同义词的名称 SQLselect * from user_synonyms; 七、约束条件 查看某表的约束条件 SQLselect constraint_name, constraint_type,search_condition, r_constraint_name from user_constraints where table_name = upper('&table_name'); SQLselect 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; 八、存储函数和过程 查看函数和过程的状态 SQLselect object_name,status from user_objects where object_type='FUNCTION'; SQLselect object_name,status from user_objects where object_type='PROCEDURE'; 查看函数和过程的源代码 SQLselect text from all_source where owner=user and name=upper('&plsql_name'); 九、触发器 查看触发器 set long 50000; set heading off; set pagesize 2000; select 'create or replace trigger "' || trigger_name || '"' || chr(10)|| decode( substr( trigger_type, 1, 1 ), 'A', 'AFTER', 'B', 'BEFORE', 'I', 'INSTEAD OF' ) || chr(10) || triggering_event || chr(10) || 'ON "' || table_owner || '"."' || table_name || '"' || chr(10) || decode( instr( trigger_type, 'EACH ROW' ), 0, null, 'FOR EACH ROW' ) || chr(10) , trigger_body from user_triggers;
‘伍’ sql数据库字典表有什么用
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合. 组成 1数据流 2数据流分量,即数据元素 3数据存储 4处理 数据字典 数据库的重要部分是数据字典。它存放有数据库所用的有关信息,对用户来说是一组只读的表。数据字典内容包括: 数据库中所有模式对象的信息,如表、视图、簇、及索引等。 分配多少空间,当前使用了多少空间等。 列的缺省值。 约束信息的完整性。 用户的名字。 用户及角色被授予的权限。 用户访问或使用的审计信息。 其它产生的数据库信息。 数据库数据字典是一组表和视图结构。它们存放在SYSTEM表空间中。 数据库数据字典不仅是每个数据库的中心。而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。
‘陆’ oracle里怎么对sql查询的日志进行查看
oracle里对sql查询的日志进行查看步骤如下:
1、Oracle日志的路径的查看。
‘柒’ oracle中怎么用sql查表以及表的字段名
1、用sql查表
查表的时候需要用到user_tables、all_tables,user_tables查出来的是该用户拥有的表,all_tables查出来的是所有用户的表。
2、用sql查表的字段
查表的字段需要用到user_tab_columns、all_tab_columns,一样的前者只能查到该用户拥有的表,后者可以查询所有用户的表。
3、其他
与上面类似的还有查询对象(user_objects、all_objects)、索引(user_indexes、all_indexes)、约束(user_constraints、all_constraints)等。
至于到底怎么查,先用select * from XXX查看表的信息,然后看下就知道了。比如查一个system表dba_data_files的字段,可以用select * from all_tab_columns where table_name = 'DBA_DATA_FILES',注意表名大写。
2014-11-04补充:
下列列出一些比较重要的数据字典:
DBA_TABLES:描述数据库中所有相关的表。
DBA_ALL_TABLES:描述数据库中所有的对象以及相关的表。
USER_TABLES:描述数据库中当前用户拥有的相关的表。
USER_ALL_TABLES:描述数据库中当前用户拥有的对象以及相关的表。
ALL_TABLES:描述数据库中所有的用户可以访问的相关的表。
ALL_ALL_TABLES:描述数据库中所有的用户可以访问的对象以及相关的表。
DBA_TAB_COLUMNS:描述数据库中所有表的列属性。
USER_TAB_COLUMNS:描述数据库中当前用户拥有的表的列属性。
ALL_TAB_COLUMNS:描述数据库中所有用户可以访问的表的列属性。
DBA_CONSTRAINTS:描述数据库中所有表的约束和属性。
DBA_CONS_COLUMNS:包含在DBA_CONSTRAINTS约束定义中的可访问的列的信息。
ALL_CONSTRAINTS:描述数据库中所有用户可以访问的表的约束和属性。
ALL_CONS_COLUMNS:包含在ALL_CONSTRAINTS约束定义的可访问的列的信息。
USER_CONSTRAINTS:描述数据库中所有当前用户拥有的表的约束的属性。
USER_CONS_COLUMNS:包含在USER_CONSTRAINTS约束定义的可访问的列的信息。
DBA_SEQUENCES:数据库中所有序列的描述。
ALL_SEQUENCES:描述数据库中所有用户可以访问的序列的描述。
USER_SEQUENCES:描述数据库中所有当前用户拥有的序列的描述。
DBA_INDEXES:描述数据库中所有的索引的属性。
ALL_INDEXES:描述数据库中所有用户可以访问的索引的属性。
USER_INDEXES:描述数据库中所有当前用户拥有的索引的属性。
‘捌’ 用SQL语句可以查看数据库表字段类型吗,怎么查语句是
Oracle中可以。利用SQL语句调用数据字典。观看表的结构及其字段的属性、权限、大小都能看。select
*
from
表名dectionalry
‘玖’ 如何在sqlplus中查看库中有哪些表
如何在sqlplus中查看库中有哪些表
觉得你应该先弄清楚oracle的常规数据字典的结构,像9i里的常规数据字典中对象名称就有以USER,ALL,DBA为前缀的对象。
以USER为例,我们查该对象下有些什么表,就应该执行下列的语句:
SQL>select table_name from user_tables;
类似的,你可以进行替换。:)
如果你想查数据库中所有的表的话,可以查询
SELECT * FROM dba_tables
如果你想查询数据库中某个用户下的表的话,也可以登录这个用户,再查询:
SELECT * FROM USER_TABLES
要想导入外部sql语句可以用命令
sql >@e:\文件名.sql
如你想保存 select * from tablename;语句的结果,可以在sql*plus 里面这样:
SPOOL c:\test.sql //这是保存文件的位置
select * from tablename;
SPOOL OFF
‘拾’ SQL如何查询一个数据库中的表
第一次回答:
写存储过程或者函数来做。
第二次回答:
过程如下,你还可以完善一下
create procere get_table
@colname varchar(30),
@colvalue varchar(30),
@coltype varchar(30)=null,
@colformat varchar(30)=null
as
begin
declare @sql varchar(100), @tablename varchar(30)
create table #tables( tablename varchar(30))
declare cur_table cursor for
select name from sysobjects a
where type = 'U' and uid = 1 and exists( select 1 from syscolumns b where b.id = a.id and b.name = @colname)
open cur_table
fetch cur_table into @tablename
WHILE @@FETCH_STATUS = 0 begin
select @sql = 'insert into #tables select'''+ @tablename +''' where exists( select 1 from '+ @tablename +' where '+ @colname +' = '''+ @colvalue +''')'
exec(@sql)
fetch cur_table into @tablename
end
close cur_table
deallocate cur_table
select * from #tables
end
go
exec get_table 'name', '张三'
第三次回答:
这个过程我在SQL server 2005中执行过了,没有问题,而且这语法也在2000中适用。
过程,我写了几次,或许你看得是开始我写的,那有错,后来更正了。
如果报错,请把错误贴出来。
第四次回答:
你要把你的过程及语句,贴出来嘛,或者说明没有改动,完全按照我的,那你也得把你的SQL语句贴出来吧?
然后,你说:
报错如下,我是新手 麻烦大家了:
(所影响的行数为 0 行)
服务器: 消息 105,级别 15,状态 1,行 1
字符串 '张' 之前有未闭合的引号。
服务器: 消息 170,级别 15,状态 1,行 1
第 1 行: '张' 附近有语法错误。
(所影响的行数为 0 行)
服务器: 消息 170,级别 15,状态 1,行 1
第 1 行: '=' 附近有语法错误。
为什么有那么多报错?是否执行了一次语句就报了你列出的所有错误?
务必把你的语句贴出来。像我第三次回答一样,建立过程的语句(如果你没有改,则不需要列出只需要说明,没有改即可),及执行过程的语句(如果你没有改,则不需要列出只需要说明,没有改即可)。
第四次回答:
你重新执行一遍一下语句:
选中到“--到这里结束”的语句,一次执行。
drop procere get_table
go
create procere get_table
@colname varchar(30),
@colvalue varchar(30),
@coltype varchar(30)=null,
@colformat varchar(30)=null
as
begin
declare @sql varchar(100), @tablename varchar(30)
create table #tables( tablename varchar(30))
declare cur_table cursor for
select name from sysobjects a
where type = 'U' and uid = 1 and exists( select 1 from syscolumns b where b.id = a.id and b.name = @colname)
open cur_table
fetch cur_table into @tablename
WHILE @@FETCH_STATUS = 0 begin
select @sql = 'insert into #tables select'''+ @tablename +''' where exists( select 1 from '+ @tablename +' where '+ @colname +' = '''+ @colvalue +''')'
exec(@sql)
fetch cur_table into @tablename
end
close cur_table
deallocate cur_table
select * from #tables
end
go
exec get_table 'name, '张三'
--到这里结束
如果仍有问题,那么执行以下语句:
create table #tables( tablename varchar(30))
insert into #tables select a.name from sysobjects a
where type = 'U' and uid = 1 and exists( select 1 from syscolumns b where b.id = a.id and b.name = 'name')
select * from #tables
drop table #tables
可以把所有包含字段'name'的表找出来,你自己再仔细研究,使用exec( SQL)的方式 SQL2000也是支持的,实在不行,你就找到表后,自己一个一个表再select也可以得到结果:
select count(1) from tablename where name = '张三'
结果大于零就说明这个表是你要找的表之一了。
自己研究下吧。