仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1945|回复: 8
打印 上一主题 下一主题

[学习教程] MSSQL教程之用户怎样无效天时用数据字典

[复制链接]
深爱那片海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:40:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
使为了数据安全,我们搭建了主从。但实时主从备份只能防止硬件问题,比如主库的硬盘损坏。但对于误操作,则无能为力。比如在主库误删一张表,或者一个update语句没有指定where条件,导致全表被更新。数据ORACLE的数据字典是数据库的主要构成部分之一,它跟着数据库的发生而发生,跟着数据库的变更而变更,表现为sys用户下的一些表和视图。数据字典称号是年夜写的英笔墨符。数据字典里存有效户信息、用户的权限信息、一切数据工具信息、表的束缚前提、统计剖析数据库的视图等。我们不克不及手工修正数据字典里的信息。  良多时分,一样平常的ORACLE用户不晓得怎样无效天时用它。  dictionary   全体数据字典表的称号息争释,它有一个同义词dictdict_column  全体数据字典内外字段称号息争释假如我们想查询跟索引有关的数据字典时,能够用上面这条SQL语句:SQL>select*fromdictionarywhereinstr(comments,index)>0;假如我们想晓得user_indexes表各字段称号的具体寄义,能够用上面这条SQL语句:SQL>selectcolumn_name,commentsfromdict_columnswheretable_name=USER_INDEXES;依此类推,就能够轻松晓得数据字典的具体称号息争释,不必检察ORACLE的别的文档材料了。上面按种别列出一些ORACLE用户经常使用数据字典的查询利用办法。1、用户检察以后用户的缺省表空间SQL>selectusername,default_tablespacefromuser_users;检察以后用户的脚色SQL>select*fromuser_role_privs;检察以后用户的体系权限和表级权限SQL>select*fromuser_sys_privs;SQL>select*fromuser_tab_privs;2、表检察用户下一切的表SQL>select*fromuser_tables;检察称号包括log字符的表SQL>selectobject_name,object_idfromuser_objectswhereinstr(object_name,LOG)>0;检察某表的创立工夫SQL>selectobject_name,createdfromuser_objectswhereobject_name=upper(&table_name);检察某表的巨细SQL>selectsum(bytes)/(1024*1024)as"size(M)"fromuser_segmentswheresegment_name=upper(&table_name);检察放在ORACLE的内存区里的表SQL>selecttable_name,cachefromuser_tableswhereinstr(cache,Y)>0;3、索引检察索引个数和种别SQL>selectindex_name,index_type,table_namefromuser_indexesorderbytable_name;检察索引被索引的字段SQL>select*fromuser_ind_columnswhereindex_name=upper(&index_name);检察索引的巨细SQL>selectsum(bytes)/(1024*1024)as"size(M)"fromuser_segmentswheresegment_name=upper(&index_name);4、序列号检察序列号,last_number是以后值SQL>select*fromuser_sequences;5、视图检察视图的称号SQL>selectview_namefromuser_views;检察创立视图的select语句SQL>setview_name,text_lengthfromuser_views;SQL>setlong2000;申明:能够依据视图的text_length值设定setlong的巨细SQL>selecttextfromuser_viewswhereview_name=upper(&view_name);6、同义词检察同义词的称号SQL>select*fromuser_synonyms;7、束缚前提检察某表的束缚前提SQL>selectconstraint_name,constraint_type,search_condition,r_constraint_namefromuser_constraintswheretable_name=upper(&table_name);SQL>selectc.constraint_name,c.constraint_type,cc.column_namefromuser_constraintsc,user_cons_columnsccwherec.owner=upper(&table_owner)andc.table_name=upper(&table_name)andc.owner=cc.ownerandc.constraint_name=cc.constraint_nameorderbycc.position;8、存储函数和历程检察函数和历程的形态SQL>selectobject_name,statusfromuser_objectswhereobject_type=FUNCTION;SQL>selectobject_name,statusfromuser_objectswhereobject_type=PROCEDURE;检察函数和历程的源代码SQL>selecttextfromall_sourcewhereowner=userandname=upper(&plsql_name);9、触发器检察触发器setlong50000;setheadingoff;setpagesize2000;selectcreateorreplacetrigger"||trigger_name||"||chr(10)||decode(substr(trigger_type,1,1),A,AFTER,B,BEFORE,I,INSTEADOF)||chr(10)||triggering_event||chr(10)||ON"||table_owner||"."||table_name||"||chr(10)||decode(instr(trigger_type,EACHROW),0,null,FOREACHROW)||chr(10),trigger_bodyfromuser_triggers;既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。
精灵巫婆 该用户已被删除
沙发
发表于 2015-1-19 21:11:31 | 只看该作者
你可以简单地认为适合的就是好,不适合就是不好。
因胸联盟 该用户已被删除
板凳
发表于 2015-1-28 10:51:47 | 只看该作者
一个百万级别的基本信息表A,一个百万级别的详细记录表B,A中有个身份证id,B中也有身份id;先要找出A中在B的详细记录。
简单生活 该用户已被删除
地板
发表于 2015-2-5 20:47:25 | 只看该作者
两个月啃那本sqlserver2005技术内部-存储引擎,花了几个月啃四本书
莫相离 该用户已被删除
5#
发表于 2015-2-13 13:48:03 | 只看该作者
多走走一此相关论坛,多看一些实例开发,多交流0经验,没什么的,我也是刚学没多久!加油
金色的骷髅 该用户已被删除
6#
发表于 2015-3-3 22:35:06 | 只看该作者
这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。
7#
发表于 2015-3-11 14:20:46 | 只看该作者
索引视图2k就有。但是2005对其效率作了一些改进但是schema.viewname的作用域真是太限制了它的应用面。还有一大堆的环境参数和种种限制都让人对它有点却步。
变相怪杰 该用户已被删除
8#
发表于 2015-3-18 23:00:52 | 只看该作者
两个月啃那本sqlserver2005技术内部-存储引擎,花了几个月啃四本书
小魔女 该用户已被删除
9#
发表于 2015-3-26 20:24:42 | 只看该作者
原来的计算字段其实和虚拟字段很像。只是管理方面好了而已,性能方面提高不多。但是SQL2005提供了计算字段的持久化,这就提高了查询的性能,但是会加重insert和update的负担。OLTP慎用。OLAP可以大规模使用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 18:52

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表