① 数据库工程师与程序员的区别
程序员是写程序的,最后形成应用程序和系统
数据库工程师主要是企业里面进行日常维护和管理的
工作范围不一样
虽然程序员也需要和数据库打交道,但是以开发为主,不监管维护
② 数据库系统的组成部分包括哪3个方面
数据库系统的组成部分包括软件、数据库和数据管理员。
(1)数据库
是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。
(2)软件
包括操作系统、数据库管理系统及应用程序。数据库管理系统是数据库系统的核心软件,是在操作系统的支持下工作,解决如何科学地组织和存储数据,如何高效获取和维护数据的系统软件。
(3)数据管理员:主要有4类
第一类为系统分析员和数据库设计人员,第二类为应用程序员,第三类为最终用户,第四类用户是数据库管理员,负责数据库的总体信息控制。
(2)数据库是程序员么扩展阅读
数据库系统的基本要求:
1、能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。
2、冗余数据少,数据共享程度高。
3、系统的用户接口简单,用户容易掌握,使用方便。
4、能够确保系统运行可靠,出现故障时能迅速排除;能够保护数据不受非受权者访问或破坏;能够防止错误数据的产生,一旦产生也能及时发现。
③ 程序员有分很多种么
程序员可以分为很多种,像Unix程序员、Windows程序员,或是C++程序员、Delphi程序员,察祥等等。今天我想谈的是Web程序员,一名真正的Web程序员应该懂得那些方面的知识,应该注意学习哪些东西。
也许有些朋友会说,我知道Asp、Jsp,会做网站、会做bbs,这应该叫Web程序员了吧。确尺燃实,我承认,这些技术是一名Web程序员应该具备的;但是,你如果仅懂得这些,却只能叫做Asp程序员、Jsp程序员,而不是真正意义上的Web程序员。现在的世界是属于Internet的,大部分的应用基于Internet,大家可以想想,像Yahoo、Microsoft、Amazon那样的网站,其访问量之大、应用之复杂,需要什么样的技术才可以支撑,难道仅仅是硬件的功劳么。
我想在Windows平台下来谈谈Web程序员应该掌握的技术
1. 首先,就是上面提到的各种脚本,asp、jsp、php等等,这些东西大同小异,基本可以举一反三。
2. 数据库,
相信做Web的人肯定用过,像Access、Sql Server、Oracle。很多人会用各种数据库,但是仅限于写一些sql,select、update、insert,用ADO来操作,如果这样,就算会用100种数据库又有什么用呢?
你应该考虑用户量、访问速度、内存消耗,这些东西和你的sql密切相关,我经常见到很多分页程序根本不去考虑数据库中有多少条数据,统统select出来,很明显,当你从数据库中查出1万条数据和100条数据,占用的内存是不同的。
另外,数据库连接池和事务机制是非常重要的,应该知道数据库用什么来保证事务,连接池如何实现,这些都是商务应用的关键。譬如,目前很多的应用服务,像weblogic、MTS,都包含事务处理,可以说好的事务处理决败困搏定了他们的竞争力。
3. 组件技术
我想是现在的Web应用推动了组件技术的发展。以前,从老式的静态库、动态库(dll),到现在的COM/DCOM,再到正在兴起中的Web Service;从单机调用,到基于内部网的分布式调用,到现在基于Internet的分布式计算。现在的应用都是基于组件的n层结构,最明显的就是COM和JavaBean。
这些东西体现了软件架构的发展,以前是基于单机的应用,然后是C/S结构,到现在的B/S结构。我记得李维曾经说过,程序员一定要注意软件技术的发展趋势,只有这样,才不至于被淹没在技术的洪流中。我想,作为Web程序员,一定要明白COM的原理,如何实现这种调用、如何进行分布式调用。说实话,我觉得COM还是比较复杂的,否则微软为什么要提供ATL和VB呢,要搞明白,应该学学C++,因为VC中提供的ATL库可以很明显的说明COM的内部运行机制。
4. 网络技术
这可以说是Web程序员最应该懂得东西。起码,应该知道Web服务器的机制,要明白Http协议。就拿IIS来说,要懂得web应用程序运行的进程安全和IIS的关系,懂得ISApi的作用。
如果有时间,就看看TCP/IP,看看winsock,这些都是底层的网络的东西。
我所说的这些都是基于微软技术下的东西,其他的像Java方面的东西都可以对照参考,就不多说了,这也是我这几年来的一些心得。总之,学海无涯,每当接触一些新的东西,就会发现自己的不足,同时也就觉得基础知识的重要。说实话,像我们做应用开发,用别人的东西,在现在这种情况下,新的技术层出不穷,稍不注意就会被甩开,这也是没有办法的事情。
④ 数据库系统由什么组成
数据库系统一般由数据库、硬件、软件、人员4个部分组成:
1、数据库是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。
2、硬件是构成计算机系统的各种物理设备,包括存储所需的外部设备。硬件的配置应满足整个数据库系统的需要。
3、软件包括操作系统、数据库管理系统及应用程序。数据库管理系统是数据库系统的核心软件,是在操作系统的支持下工作,解决如何科学地组织和存储数据,如何高效获取和维护数据的系统软件。其主要功能包括:数据定义功能、数据操纵功能、数据库的运行管理和数据库的建立与维护。
4、人员主要有4类。系统分析员和数据库设计人员,负责应用系统的需求分析和规范说明;应用程序员,负责编写使用数据库的应用程序;最终用户,利用系统的接口或查询语言访问数据库;数据库管理员负责数据库的总体信息控制。
(4)数据库是程序员么扩展阅读:
常见数据库系统
1、MySQL
一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。
2、SQL Server
Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点。Microsoft SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。
3、Oracle
Oracle产品系列齐全,几乎囊括所有应用领域,大型,完善,安全,可以支持多个实例同时运行,功能强。能在所有主流平台上运行。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。
⑤ 程序员与数据库是2种不同职业吗
DBA 数据库管理员,DBA 的工作是 DBMS 管理和数据维护。这里的数据库是指企业级数据库,那种 PC 服务器上用的不算
好的 DBA 和好的程序员一样,既不愁没有市场也不愁没有价值
没有市场没有价值的只是没有达到一定水平的或者不求上进的一部分,任何职业都一样