1、零基础,想要自学数据库的话,觉得起步阶段首选《数据库系统概念》这本书,因为这本书比较系统且综合全面。里面包含了数据模型、关系模型、基于对象的数据库以及XML、数据存储和查询、事务管理、数据库系统体系结构等各方面的相关内容。相当地直观易懂,里面的有些内容运用了结构清晰的图示和示例来取代形式化的证明。
2、然后,需要选择一个具体的数据库产品学习,比如常见的Access、SQL-Server、MySQL、Oracle、DB2,不同的数据库产品之间区别很大的,每一种数据库都有与之相应的经典书籍,官方也有那些入门文档。自己到网上搜对应的数据库名字就能找到了。当然,如果你想快餐式入门,那就看些视频或者国内的一些什么XXX从入门到精通、XX天精通XXX之类的书吧!
3、现在常见的数据库大部份都是关系型数据库,不管是理论和 *** 作基本都是一样的,如果从 *** 作和易学的角度来说,SQL SERVER还是比较容易上手的,网上的资料和各种书籍也不少,但是如果数据量大,数据库的稳定性来说,Oracle还是比较要强一点的。你就看自己的情况来选择吧!
3、总之,学习数据库,和学习其他电脑知识一样,要注重实践,也就是要上机实习。先学习一些数据库的基本概念,然后一边看书,一边上机,是个很好的方法。在网上去找一些有关的视频教程,跟着视频学习,会轻松一些。学习知识,关键在于持之以恒,这样才会有好的成绩。
拓展资料:
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
参考资料:数据库-百度百科
要说数据库,一般以SQL Server作为入门的学科,它适合中小型项目开发,而现在比较流行于大型开发的有:\x0d\x0aOracle\x0d\x0a现在具有企业大型软件的绝对占有率\x0d\x0aDB2 在以IBM服务的公司以及单位(中国银行)\x0d\x0aMySql 相对不是很正式的开发,使用MySql\x0d\x0a当然还有一些:Access(桌面数据库),FoxPro(中国教育),Informix的数据库系统.\x0d\x0a刚开始入门的时候可以找点视频教程来学习,视频教程一般讲得比较好,但不要企图于通过它达到比较高的水平。然后要学会将自己所知道的去实践,多实践。当觉得实践到一定程度而没有什么冲劲了,就去学习理论,当觉得理论知识需要发挥的时候就去实践,时间的周期不一定,没有什么定论,但自己的时间安排需要定论就可以了。\x0d\x0a我一直都认为在计算机行业要学会一门技术太简单了,但如果要把技术发挥到一定程度就有难处了,一定程度是什么意思,就是把技术如何发挥到具体的业务之中,会动脑筋去思考,而把技术作为相对次要的东西了。\x0d\x0a数据库的DBA人员需要兼有系统分析员和运筹学的业务素质。在技术上讲,我个人认为数据库的前续学科是“数据结构”。\x0d\x0a我现在刚学SQL Server一段时间,就自己的感想谈谈:\x0d\x0a1.数据库是非常快的数据处理程序,其内在的本质依旧是"文件".因为\x0d\x0aWindows *** 作系统管理机制就有:磁盘、文件、目录。Linux的方式只有文件。所以数据库重本质的角度来说是一种平台软件,是将文件翻译成逻辑语言的软件,成为我们软件程序数据交换的中心,为什么那,一个很重要的原因就是“快”,还有就是“安全”、“集成”等等。因为以前的语言程序要处理数据要编写大量算法十分麻烦而且很容易出错等等。大家就想到集成了。。。。。\x0d\x0a2.其实,要谈到 *** 作数据库,简单的就太简单了,但是数据库最难的不是 *** 作,而是在数据库的设计上。一个大型程序设计者肯定是一个数据库的高手,因为大型程序要死板地去完成它是非常困难和不理智也是不安全不稳定的,我们要充分利用自己所有的能力去挖掘其数据之间的奥秘,然后体系化数据库结构,相当于在数据库中如何层次化地建立数据结构。将需求中的矛盾事物改变成可以相互融合的。\x0d\x0a我说的数据库 *** 作简单是指一般 *** 作,如果难的 *** 作还是有点技术的,但还是难不到那里去。下面我把我的一个小数据库程序给你看看:(下面这个程序已经建立数据库library,然后用dbo用户建立了表relatBook,并将表的第一个字段设置为“主键”PK)\x0d\x0a该程序想说的第一点是:程序按照标准用户写入法则写入。\x0d\x0a另外就是在执行多个 *** 作的时候每一步骤的 *** 作我们都必须为其设置错误的回滚 *** 作。所以程序前两个段落都是一样的,在插入的时候故意出现异常,看第1和第3个语句是否能成功执行。\x0d\x0a从上面看出点什么没有,你我执行了三个 *** 作,第一个 *** 作是肯定成功的,第二个是肯定失败的,第三个跟在后面,那么你想一想第一个和第三个 *** 作能插入数据库中吗?我这个程序没有什么意义,但只是未了说明问题。\x0d\x0a答案是:不能。\x0d\x0a为什么不能,这是SQL所支持的“事务”外完成的,这是技术问题,没有什么的,会了大家都会。为什么要这样做那,那才是要学习的前提。你想一想如果你建立了一个地区的帐物管理系统,当一个单位向另外一个单位转帐的时候,需要执行两个 *** 作就是将一边的信息刷掉,一边的信息添加上去,而当执行一半的时候出现了某种异常中断,比如高优先级的抢占,服务器重起、停电。当时你知道有多少人在访问你的服务器,那要造成多大的数据库信息丢失,甚至于导致数据库的查询的严重失败。那么我就知道需要上面知识的支持了。\x0d\x0a3.为什么说上面的东西都很简单那,因为只要你会,那就可以了,而设计方面的东西是永远不是那么简单的,永远带有创新和追求,没有最高的境界。\x0d\x0a就一个十分常见的问题,如何在数据库中配合好人员、角色、权限、类别、级别、可 *** 作性这几者的关系,如果是没有经验的人直接上手可能会乱来(我们最早也是这样的)。有经验的人也会设计一段时间,而且随着软件复杂性的增加,其数据库的这几者之间的复杂性就越来越复杂。所以大型软件是非常难的。就一个很简单的例子,在很多的网站中,有上百的栏目信息,而每一个栏目间又保持独立。图片的位置和图片的信息都是动态更新的。某些网站的可 *** 作性都以树型结构提供,而树型结构的子树类别和和叶子都是不重复而不错误。而且其层数都是动态的。有些人给我说可以通过前台的判定语句来执行树型结构的生成,但我问了一个问题,如果是一个邮政编码系统,有几十万个邮政编码你在前台要写多少个case语句,而且每一次要遍历一次已经生成的树,还有用前台的case语句编写出来的树型结构其二级子树全部“定死”,而且树型结构的层树也被定死。这不是完全动态级别的网站。为以后对网站的维护带来麻烦。\x0d\x0a总之,数据库是一门入门容易却达到高手很难的学科,通过不断在失败中吸取经验,才能得到一些书籍上无法学会的东西,那才是真正的高手。也就是说,学技术是很快的,要会将技术运用于实际的业务分析,才可以成为一个自我型的DBA,而不是一个简单的程序员。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)