一、sql server的理解
sql server服务器就像一栋大楼,大楼里的机房就像服务器的数据库,机房里的电脑如同数据库里的表
1、 登录用户可以登录服务器——可以进大楼
2、 登录用户成为数据库用户才能进指定的数据库——进入大楼的人给了某个机房的钥匙
才能进入机房
3、 登录用户有权限使用表——进入机房的人有电脑的密码才能使用电脑
二、oracle的理解
oracle服务器(全局数据库)就像一个商场,商场的每一家公司是表空间,公司的业务是表
1、 数据库由多个表空间组成——商场里有多家公司组成
2、 表空间由段组成——公司要有自己的经营业务,可以只有一个业务,就是一个表空
间中只有一个段,可以有多个业务,就是一个表空间有多个段
3、 段由区组成——单个业务的细分类别。例如有家公司经营三个业务,卖书,卖家电,
卖衣服,则每个业务就是一个段。而每个业务又有细分,比如卖书的话要进行分类了。计算机区,人文区,小说区等,每一区都要放上书架存放书籍,则书架就是oracle块,存放数据的
三、数据库,表空间,用户(指定默认表空间),表统统由管理员管理
四、在oem中管理数据库的步骤
1、创建
1) 存储——表空间——创建表空间 (tomspace)(类似于在sql中创建数据库,
通常可以省略,使用默认表空间为users,,临时表空间为temp)
2) 首先展开安全性——创建新用户(tom,指定表空间)(类似于在sql中指定
数据库用户)
3) 创建表——指定方案(用户)和表空间(列名不要带<>)
4) 设置约束
5) 输入信息:方案——用户名——表——右击——查看 /编辑目录…
2、修改
1)方案——用户名——表
2)修改表结构,添加约束
3、删除: 右击表——移去
五、注意事项
1、 刚创建的用户不会出现在方案中,只有创建了一个表指定方案和表空间,该用户的
方案名就会出现在方案中,此时就可以方便为该方案创建其他表
1)新创建的用户能在sqlplus中登录,为什么不能在企业管理器中登录呢?
解答:需要授予 select any directory权限才能正常登录企业管理器,但没有其他权限
2)可以对创建的用户在安全性中赋予角色权限,如dba,则该用户就是数据库管理
员
3) sys用户主要用来维护系统信息和管理实例,只能以sysoper或sysdba角
色登录
4)安装oracle的用户自动为ora-dba权限,自动是sys用户,所以在登录时不需要
用户名和密码,只要选中以sysdba登录。其他用户登录计算机系统,在使用oracle
时就是正常登录状态了。
2、向表中添加日期数据:时间格式为dd- mm- yyyy怎么修改呢?如何插入时间数
据
1) 先在sqlplus中select sysdate from dual; 就知道日期的格式
2) alter session set nls_date_format='yyyy-mm-dd'; 修改当前输入格式
3)oracle中的默认格式是:‘dd-mm-yyyy’ ;修改语句:alter session set
nls_date_format='yyyy-mm-dd'; 修改后输入和显示都为指定格式 ,缺点是只对当前会话起作用
假如你是要永久修改的话,改注册表:
regedit->hkey_local_machine->oracle->homeo->
nls_date_format值yyyy-mm-dd(经验证不管用)
默认日期:50年之前是当前世纪,50年之后是之前世纪,31-12月-49代表2014年01-1月-50 代表1950年
4)由于在表编辑器中to_date函数的格式是dd-mon-yyyy,输入时为如下格式13-6
月-1983(代码编辑时一样,世纪可以省略,代表当前世纪)
5)to_char通常用于查询语句; to_date通常用于增删改语句
6)两个’代表一个’
六、代码编辑器
1、sql plus
2、sql plus worksheet
3、isqlplus
设置列宽:set linesize 50;
七、与sql2014中的查询分析器不同 ,sql plus worksheet执行所有语句,不单单执行选中语句
八、编辑——清除;可以清除查询结果
九、查看环境变量:select * from v$nls_parameters;
十、示例用户
1) scott/tigernormal登录
2)hr : 需要解锁和重设密码(alter user hr account unlock; )
十一、查看和更改oracle http占用端口号,d:ora9apacheapacheconf下,httpd.conf和httpd.conf.default中将80修改,然后重新启动http服务 加个字符串
六、工具的使用
1、net manager: 配置服务主机名和监听主机名
2、net configuration assistant:配置监听程序,本地服务名配置等
/*****************************************************************************/ oracle小知识点
1、 数据操作时,字段区分大小写
2、 oracle两种认证模式:(1)操作系统认证(2)文件口令认证 。
初始化参数的文件目录为d:oracle_programdatabase
3、 sqlplus中使用 help index查看帮助信息目录,
? 命令:查看某个命令的详细用法
连接数据库后才能使用
5、当代码中使用函数时,函数中固定的关键字 ……此处隐藏2691个字……没奖金的人也显示不出月总收入
nvl(,)函数解决这个问题
nvl(comm,0)-- java语言表示:if(comm==null)return 0;else return comm;
4.select ename||'work as '||job from emp; -- 连接,合并多列的内容于一列展示
5.联合selection与projection,想看部门号有哪些?-- 使用distinct关键字
select distinct deptno from emp; -- 两个步骤 1.取出所有行,只显示deptno,重复太多2.看成只有一列的新表,剔除重复 简言之:1.出新表2.去重复
注意:只有两行完完全全的一样,才能舍弃一个
6.结果排序:
select distinct deptno,job from emp order by deptno,job;
-- 先按deptno排序,在按job排序(根据首字母)
第五篇:如何学习oracle如何学习oracle-给我的朋友们
很多朋友经常问起学习oracle的方法,在这里我把写在《oracle数据库性能优化》一书前面的话贴在这里,供大家参考,希望能对来这里的朋友有所帮助。
-------------------------------------------------------------------------------
经常有朋友会问,应该如何学习oracle,怎样才能快速提高?我把自己的一点心得写在这里,供大家参考。
其实学习任何东西都是一样,没有太多的捷径可走,必须打好了坚实的基础,才有可以在进一步学习中得到快速提高。
王国维在他的《人间词话》中曾经概括了为学的三种境界,我在这里套用一下:
古今之成大事业、大学问者,罔不经过三种之境界。
“昨夜西风凋碧树。独上高楼,望尽天涯路。”此第一境界也。
“衣带渐宽终不悔,为伊消得人憔悴。”此第二境界也。
“众里寻他千百度,蓦然回首,那人却在灯火阑珊处。”此第三境界也。
学习oracle,这也是你必须经历的三种境界。
第一层境界是说,学习的路是漫漫的,你必须做好充分的思想准备,如果半途而废还不如不要开始。
这里,注意一个"尽"字,在开始学习的过程中,你必须充分阅读oracle的基础文档,概念手册、管理手册、备份恢复手册等(这些你都可以在http://tahiti.oracle.com 上找到);ocp认证的教材也值得仔细阅读。打好基础之后你才具备了进一步提升的能力,万丈高楼都是由地而起。
第二层境界是说,尽管经历挫折、打击、灰心、沮丧,也都要坚持不放弃,具备了基础知识之后,你可以对自己感兴趣或者工作中遇到的问题进行深入的思考,由浅入深从来都不是轻而易举的,甚至很多时候你会感到自己停滞不前了,但是不要动摇,学习及理解上的突破也需要时间。
第三次境界是说,经历了那么多努力以后,你会发现,那苦苦思考的问题,那百思不得其解的算法原理,原来答案就在手边,你的思路豁然开朗,宛如拨云见月。这个时候,学习对你来说,不再是个难题,也许是种享受,也许成为艺术。 所以如果你想问我如何速成,那我是没有答案的。
不经一番寒彻骨,哪得梅花扑鼻香。
当然这三种境界在实际中也许是交叉的,在不断的学习中,不断有蓦然回首的收获。 我自己在学习的过程中,经常是采用"由点及面法"。
当遇到一个问题后,一定是深入下去,穷究根本,这样你会发现,一个简单的问题也必定会带起一大片的知识点,如果你能对很多问题进行深入思考和研究,那么在深处,你会发现,这些面逐渐接合,慢慢的延伸到oracle的所有层面,逐渐的你就能融会贯通。这时候,你会主动的去尝试全面学习oracle,扫除你的知识盲点,学习已经成为一种需要。
由实践触发的学习才最有针对性,才更能让你深入的理解书本上的知识,正所谓:
“纸上得来终觉浅,绝知此事要躬行”。实践的经验于我们是至为宝贵的。 如果说有,那么这,就是我的捷径。
想想自己,经常是"每有所获,便欣然忘食",兴趣才是我们最好的老师。
oracle的优化是一门学问,也是一门艺术,理解透彻了,你会知道,优化不过是在各种条件之下做出的均衡与折中。
内存、外存;cpu、io...对这一切你都需要有充分的认识和相当的了解,管理数据库所需要的知识并不单纯。
作为一个数据库管理人员,你需要做的就是能够根据自己的知识以及经验在各种复杂情况下做出快速正确的判断。当问题出现时,你需要知道使用怎样的手段发现问题的根本;找到问题之后,你需要运用你的知识找到解决问题的方法。
这当然并不容易,举重若轻还是举轻若重,取决于你具备怎样的基础以及经验积累。 在网络上,howard j. rogers最近创造了一个新词组:voodoo tuning,用以形容那些没有及时更新自己的知识技能的所谓的oracle技术专家。由于知识的陈旧或者理解的肤浅,他们提供的很多调整建议是错误的、容易使人误解的,甚至是荒诞的。他们提供的某些建议在有些情况下也许是正确的,如果你愿意回到oracle5版或者6版的年代;但是这些建议在oracle7.0,8.0 或者 oracle8i以后往往是完全错误的。
后来基于类似问题触发了互联网内oracle顶级高手的一系列深入讨论,tom、jonathan lewis、hjr等人都参与其中,在我的网站上()上对这些内容及相关链接作了简要介绍,有兴趣的可以参考。
hjr给我们提了很好的一个提示:对你所需要调整的内容,你必须具有充分的认识,否则你做出的判断就有可能是错误的。
这也是我想给自己和大家的一个建议:学习和研究oracle,严谨和认真必不可少。 当然你还需要勤奋,我所熟悉的在oracle领域有所成就的技术人员,他们共同的特点就是勤奋。
如果你觉得掌握的东西没有别人多,那么也许就是因为,你不如别人勤奋。
要是你觉得这一切过于复杂了,那我还有一句简单的话送给大家:不积跬步,无以至千里。学习正是在逐渐积累过程中的提高。
现在itpub给我们提供了很好的交流场所,很多问题都可以在这里找到答案,互相讨论,互相学习。这是我们的幸运,我也因此非常感谢这个网络时代。
itpub的第二本书即将出版,谨以此祝愿itpub越来越好,也愿我们的书能给大家带来知识和帮助。
本网推荐更多精彩内容:学习oracle的六个步骤
怎样学习oracle
oracle学习笔记
oracle数据库学习总结
oracle培训心得
文档为doc格式