学习数据库
㈠ 如何学好数据库
就有点sql的基础知识,该怎么学好Oracle?
--从SQL起步,依次学习select,insert,update,delete,分组函数,各种连接,合并,权限管理,同义词,schema.
然后学习PL/SQL的函数,存储过程,序列,触发器,事务,动态SQL,异常处理.
SQL优化也要了解一些(执行计划)
如果不学DBA这些就足够了.
另外问一下sqlserver和Oracle是处理数据的软件吗,还是指什么?(一提数据库,都说SQLSERVER,Oracle,Access他们本质上是什么?是软件,还是指储存数据的不同模式?)
--对,都是数据库软件.
本人有C++基础,学数据库要用的除SQL外的编程语言吗?(要用到多少)
--Oracle要用到PL/SQL(和SQL有所不同...如果你学SQL Server,要用到T-SQL)
另外推荐几本书看看(这是重点)
--推荐steve feurstein的oracle pl/sql programming(不好意思,我看的都是英文书.可以去书店找找影印版...)
㈡ 数据库应该怎么学习,零基础。
1、 自己在windows和linux上安装了mysql,自学linux的基础知识,学习mysql的最基础的知识,即怎么写sql,存储过程,表的设计等,从0到熟悉大概花了3个月 ,推荐《mysql入门很简单》。
2、系统地较为深入地学习mysql的sql优化,备份和恢复,参数优化,架构优化,硬件层面的优化,高可用方案,复制技术等等,这段时间你不一定能实际接触到这些,就像我当初那样,肯定没什么公司招一个小白。
我选择自己看书,推荐《高性能mysql》,里面所有的章节都需要看一遍,以现在的水平肯定看不懂,但需要知道大概怎么回事,为后续的找mysql初级dba的工作打一个铺垫,这个过程大概也需要3个月。
3、 纸上得来终觉浅,完成以上两步,我开始准备找一份mysql相关的工作,而不是天天用着excel表格做着select * from table_sb这样的工作。
当然我这么猥琐的人肯定不会裸辞,该画的电路板也一样画,业余时间开始投初级mysql dba的工作,并且不间断地学习,网上各种找mysql面试的相关题目(实际上我当时完全没有任何实战经验),陆续收到一些面试,凭借之前自学的mysql知识,开始胡乱吹牛逼,先混进去再说。
你不做mysql实际相关的工作,永远也不知道自己之前认知的db知识有多幼稚。
友情提示一点,一般公司都没有专职dba的,所以面试的时候一定要自信,其实你学了这么多,虽然毫无实战经验,理论知识很大概率比面试你的人牛逼,所以各种吹,我就这样真正进入初级dba的圈子(由于这时对linux还处于cd ls的水平,所以之前也根本没做过运维),这个边工作边找工作的过程又持续了2个月。
4、真正进入互联网,接触生产环境后,这是我进步最大的时候。
第一步需要将之前所学真正地应用起来,并且应用的过程中,再回头看之前的书籍,这时候需要真正去理解,而不是似是而非,一知半解。
这时再推荐《高性能mysql 第三版》,全本再看一遍,这时需要全部看懂,另外还有《mysql技术内幕:innodb存储引擎》等等。
总之这段时间就需要开始关注mysql一些细节了,比如db故障处理,高可用,负载均衡等等的具体实现了。
另外,linux的知识同步也要深入去学习,至少会写shell脚本,常见的linux知识等,我在这花了1年多;
5、 dba的工作一般是非常轻闲的,毕竟不是大公司,技术能力有限,该学的也学得差不多了,接触不到海量数据,高并发等比较锻炼人的场合,于是我又准备跳了。
于是来了公有云,现在每天运维万多个db实例,平均每天处理5+个紧急db故障,几乎mysql会遇到的问题,感觉都遇到了,能感觉到技术实力和经验也在每天都在积累,在进步。
但是感觉还是欠缺了很多,下一步就看你选择了,是再去研究源代码,底层原理的东西多点,还是数据库运维和应用多一点,就比如业界姜承尧,何登成与叶金荣的区别。
由于我的历史原因,对c++等几乎不懂,平时也用不到,所以看代码等事实际太累,于是我再去学mongodb,接了公司mongodb运维的活,算是在广度上的一个扩展,万一哪天mysql不行了呢
6、 总之,对于db小白来说,最重要的一点就是,学习的过程不能断。
PS 上面的方法比较野路子,适合没什么基础的童鞋,如果本来就是DBA,比如从oracle转到mysql,那么建议直接看mysql官方文档,而官方文档是db达到一定水平后必看,出问题时必查的权威文档。
㈢ 如何学习数据库知识
好像武侠小说里边说的:“你的招式忘了没有?”,回答:“差不多忘了”,“忘了就好”。
这与数据库编程有什么关系?关系可大了。同志们学过Pascal、BASIC、C(C++)没有?如果没有,FOXBASE、FOXPRO应该学过吧?按以上这些语言编程,都是过程化的,说白一点就是一个数据一个数据、一条记录一条记录去处理(FOXBASE、FOXPRO不完全这样,但书上也经常是这样介绍的),当初我接触ACCESS
97时,一下子没有了IF、FOR这些语句(指数据处理),都用SQL语句,真是找不到北了,好在我学SQL语言时,也尽量忘掉这个IF、FOR,到我忘得差不多时,功夫也进了一大步,原来要编一大段程序,现在一两条SQL语句搞定,就算用多几条SQL语句,由于是在图形界面下做,可视化操作,拉拉扯扯,再修改一下生成的SQL语句,也就省事多了。
由于ACCESS具备完整的SQL语言(FOXBASE没有、FOXPRO不完整),我从ACCESS
97开始用ACCESS编程,到现在为止,DAO、ADO很少用,加上最近从爱赛思上接触的一些技术,基本上不用DAO、ADO都可以了,可以从我的“未完工的库存管理”中看出,只是在特殊情况下才偶尔用一下。(少用,但不是不用,还得学,不要误解)
如何学好数据库编程?下面介绍一下本人的一些经验,仅供参考:
1.首先要把原来一个数据一个数据、一条记录一条记录的数据处理方式忘掉,越彻底越好。
现在用成批处理了。少用记录集一条记录一条记录地处理,尽量用SQL语句。
2.学好关系数据库的理论,尤其是规范化理论,表的设计一定要规范化,最起码要规范化到第三范式。集合运算(并、交、差)。关系运算(选择、投影、连接)。其中连接与规范化是紧密结合的。
3.运用面向对象的技术:面向对象的分析OOA、面向对象的设计OOD、面向对象的编程OOP,根据表的关系,用窗体和子窗体、报表和子报表,仿真面向对象,这样可以增加程序的可读性和可维护性。(这是高级技术,同志们不要轻视,做大项目你就知道有用了)
4.用查询时,通常一步做不出来,可以分几步做,本人通常是这么做的,从我给网友回复的例子中也可以看得出。为什么要这样做?(1)有些是SQL语言的限制,没办法一步做出来,逼的;(2)可以检查每一步查询的结果,容易调试;(3)增加可读性,便于日后维护。
5.查询的结果用窗体显示或用报表打印,两者的技术差不多。通常改变打开窗体或报表的条件就可控制显示或打印的记录范围。另外用查询做数据源时,动态改变查询中的SQL语句,比在查询中引用窗体的控件要方便,因为SQL语句生成是在VBA中,可以先存放在字符变量中,然后再更新查询的SQL语句,这样就可以用断点来检查变量值对不对,如果在查询中引用窗体的控件,尤其是包含IIF()函数时,调试是很困难的。
6.开发一个系统,首先要解决技术问题,即算法,用简单例子,把算法弄懂了,再详细设计,这一点从网友的提问中可以看出,有很多人问题表达不清楚,有的人其中夹了很多与算法无关的东西,尤其是很专业的东西,别人不容易看得明白,由于算法没搞清楚,程序就无法编了。
7.不要使用过多的工具特性,使用过多的工具特性会使可读性降低,可维护性差,要别人帮忙时难以得到帮助,更要命的是可移植性差,从MDB到ADP就可以体会到了,所以在编程时可读性很重要,可移植性更重要,你甘心自己的程序就固定在一个环境下运行吗?你甘心永远用一个工具搞开发吗?为了你的“钱途”,不要玩弄太多的技巧,当然技术研究是另外一码事。
㈣ 数据库如何学习
数据库原理学习方法经验
有不少同学说数据库原理难学,我深有同感。数据库原理难在抽象,特别是有关“范式”和SQL语言的章节,学习起来往往感到力不从心。
自考的特点是覆盖面广但并不深,你不能临时抓重点来应付考试,平时就要多花时间和精力来学习。但自考生由于工作繁忙或其他原因,需要掌握高效率的学习方法,有目的性、针对性地学习。其实,《数据库原理》课程中需要记忆的东西并不多,这门课的考核要点在于应用。下面我就自己的经验和大家探讨一下这门课的学习方法。
掌握知识结构
《数据库原理》的主要内容有SQL语言、关系代数、关系演算语言、数据库设计与保护、关系理论等。其他一些有关关系数据库管理系统实例与数据技术新发展的内容属于了解范围,学习这些知识可以扩宽你的眼界,但它们并不在考试范围内。
关系代数、SQL语言的难度都不是很大。其中,SQL语言和关系代数(演算)要求掌握各种语句的应用,多做书中的例题可以帮助自己熟能生巧。最难的部分在于关系数据库设计理论,很多概念比较抽象,难于理解,这部分需要花多点的时间来学习。
学习数据库设计时必须要对整个数据库设计流程有清晰的认识。从需求分析→概念结构设计→逻辑结构设计→数据库物理→数据库运行和维护,各阶段的主要任务都要清楚明了。建议大家参照书中例题多做一些数据库设计,会有很好的效果。
数据库保护部分属于需要多看多记的内容,数据库设计章节的内容则属于记忆加应用的类型,在熟记设计步骤的基础上,要反复阅读书中的例子以加深理解。第一范式,第二范式……这些概念非常抽象,是许多考生头痛的问题。这一部分内容的学习关键是要抓住数据依赖关系来区分各种范式,要弄清改变各种范式最终的目的是优化数据库,另外最好把各种概念应用到实际例子中来记忆。
认真做好习题
虽然我们并不提倡题海战术,但在把基本知识复习好的基础上适当地多做试题的确有助于我们顺利通过考试。你可以从一些提供自考学习资源的网站上获得试卷并将它们打印出来认真地做一遍。
理论实践相结合
理论知识的学习可以开拓人的眼界。以前我自学数据库知识,以为一个FoxBase就是数据库管理系统,通过理论学习我才认识到自己只是井底之蛙,FoxBase只是一个小型的数据库管理系统。
实践可以让你把抽象的理论知识理解、掌握得更透彻;光在纸上书写SQL语言是纸上谈兵,你可以找一些数据库管理系统,如mySQL、msSQL,自己做一个数据库用一用SQL语言,可以加深你的理解。如有机会,你还可以参加一个数据库系统的实际项目设计,运用所学的数据库设计理论来指导实践,这样可以进一步巩固所学的理论知识。
建议你去参加一点培训。我知道一个开设了数据库课程的地方:重庆创思特科技有限公司,该公司的地址为:重庆市永川区文理学院红河校区逸夫楼,你可以去看看,联系电话是02385376003,李老师
㈤ 怎么可以学习数据库呢
就有点SQL的基础知识,该怎么学好Oracle?
--从SQL起步,依次学习select,insert,update,delete,分组函数,各种连接,合并,权限管理,同义词,schema.
然后学习PL/SQL的函数,存储过程,序列,触发器,事务,动态SQL,异常处理.
SQL优化也要了解一些(执行计划)
如果不学DBA这些就足够了.
另外问一下sqlserver和Oracle是处理数据的软件吗,还是指什么?(一提数据库,都说SQLSERVER,Oracle,Access他们本质上是什么?是软件,还是指储存数据的不同模式?)
--对,都是数据库软件.
本人有C++基础,学数据库要用的除SQL外的编程语言吗?(要用到多少)
--Oracle要用到PL/SQL(和SQL有所不同...如果你学SQL Server,要用到T-SQL)
另外推荐几本书看看(这是重点)
--推荐steve feurstein的oracle pl/sql programming(不好意思,我看的都是英文书.可以去书店找找影印版...)
基本上操作各种数据库不近相同,其中access是小型数据库,sqlserver与oracal是中型的,DB是大型数据库。
1、学习数据库的SQL语句,每个数据库基本上上不多,但是都有自己的不同,有的时间类型用‘’标识有的用#等。但是基本的SQL都是一样的select ,update,Insert,Delete,基本上学会了基础的,就学习高深一点的,如何联合表查询,编辑,修改。
2、这些熟悉以后,就要学习一下数据库的一些常用的系统函数,再之后就是要学习,存储过程,函数,触发器,事务。基本数据库这部分就没有什么问题了,只要不做高级的科研什么的,这些知识就都够了。要想学好数据库,就要多联系,自己创建一个带有逻辑的符合第三范式以上的数据库,然后写写SQL、触发器、存储过程、试图等。最重要的就是,把他们之间的逻辑搞清楚。
㈥ 零基础如何学习数据库
学习数据库从了解到认识到使用是要很多时间的,需要学习的东西很多。如果为了企业的一些资料,数据便于利用存储,而且不是什么大企业还是什么大项目,用SQL有点专业了。你如果是自己用还是只是了解会一点,那就学个简单点的。
数据库都很复杂,不用的软件就是能实现的功能和他运行的速度有所不同。如果学的不是很深的话,就学office的access。一般是陪在office的办公软件里的。书籍先去看下电子书,下载个PDF可以浏览的软件,然后上网上去下载电子书,有数据库专用书之类的。里面还可以下载比较旧版本不用钱的软件,就如你要的SQL数据库或是Photoshop这些软件都有的。
㈦ 怎样学好数据库
好像武侠小说里边说:招式忘了没有回答:差多忘了忘了好
与数据库编程有关系关系大了同志们学过Pascal、BASIC、C(C++)没有没有FOXBASE、FOXPRO应该学过吧按上些语言编程都过程化说白点数据数据、条记录条记录去处理(FOXBASE、FOXPRO完全样书上也经常样介绍)当初我接触ACCESS
97时下子没有了IF、FOR些语句(指数据处理)都用SQL语句真找北了好我学SQL语言时也尽量忘掉IF、FOR我忘得差多时功夫也进了大步原来要编大段程序现两条SQL语句搞定算用多几条SQL语句由于图形界面下做视化操作拉拉扯扯再修改下生成SQL语句也省事多了
由于ACCESS具备完整SQL语言(FOXBASE没有、FOXPRO完整)我从ACCESS
97开始用ACCESS编程现止DAO、ADO少用加上近从爱赛思上接触些技术基本上用DAO、ADO都了从我未完工库存管理看出只特殊情况下才偶尔用下(少用用还得学要误解)
1.首先要把原来数据数据、条记录条记录数据处理方式忘掉越彻底越好
现用成批处理了少用记录集条记录条记录地处理尽量用SQL语句
2.学好关系数据库理论尤其规范化理论表设计定要规范化起码要规范化第三范式集合运算(并、交、差)关系运算(选择、投影、连接)其连接与规范化紧密结合
3.运用面向对象技术:面向对象分析OOA、面向对象设计OOD、面向对象编程OOP根据表关系用窗体和子窗体、报表和子报表仿真面向对象样增加程序读性和维护性(高级技术同志们要轻视做大项目知道有用了)
5.查询结用窗体显示或用报表打印两者技术差多通常改变打开窗体或报表条件控制显示或打印记录范围另外用查询做数据源时动态改变查询SQL语句比查询引用窗体控件要方便因SQL语句生成VBA先存放字符变量再更新查询SQL语句样用断点来检查变量值对对查询引用窗体控件尤其包含IIF()函数时调试困难
6.开发系统首先要解决技术问题即算法用简单例子把算法弄懂了再详细设计点从网友提问看出有多人问题表达清楚有人其夹了多与算法无关东西尤其专业东西别人容易看得明白由于算法没搞清楚程序无法编了
7.要使用过多工具特性使用过多工具特性会使读性降低维护性差要别人帮忙时难得帮助更要命移植性差从MDBADP体会了所编程时读性重要移植性更重要甘心自己程序固定环境下运行甘心永远用工具搞开发
㈧ 初学者怎么学数据库
基本上操作各种数据库不近相同,其中access是小型数据库,sqlserver与oracal是中型的,DB是大型数据库。
1、学习数据库的SQL语句,每个数据库基本上上不多,但是都有自己的不同,有的时间类型用‘’标识有的用#等。但是基本的SQL都是一样的select ,update,Insert,Delete,基本上学会了基础的,就学习高深一点的,如何联合表查询,编辑,修改。
2、这些熟悉以后,就要学习一下数据库的一些常用的系统函数,再之后就是要学习,存储过程,函数,触发器,事务。基本数据库这部分就没有什么问题了,只要不做高级的科研什么的,这些知识就都够了。要想学好数据库,就要多联系,自己创建一个带有逻辑的符合第三范式以上的数据库,然后写写SQL、触发器、存储过程、试图等。最重要的就是,把他们之间的逻辑搞清楚。
3、如果您想学数据库,可以看看深度剖析Exadata数据库一体机视频课程。
㈨ 数据库好学吗
学习数据库,最主要的是兴趣,如果没有兴趣,学习起来会显得枯燥、增加学习的难度。