数据库ERP面试题经典总结.docx
《数据库ERP面试题经典总结.docx》由会员分享,可在线阅读,更多相关《数据库ERP面试题经典总结.docx(50页珍藏版)》请在冰点文库上搜索。
数据库ERP面试题经典总结
问题1、请描述一下ERP的项目流程一般分为哪几部分?
ERP项目流程一般分为这几个阶段,一是项目立项,企业根据自身的发展情况,看是否要上ERP;二是ERP选型,选择一个适合自己公司规模和行业的ERP;需求调研,实施xx会对公司提出的需求进行可行性上的分析;三是业务流程重组,对公司流程进行梳理,修改不完善的流程;四是培训和模拟演练,拿典型的数据,让员工进行操练;五是正式上线,手工与系统作业并向运行;六是关掉手工作业,独立运行ERP系统;七是后续的完善。
备注:
若应聘者能熟练的说出这个过程,说明他实际接触过这些流程。
否则,则说明他只接触过其中的一部分,或者只是滥竽充数。
问题2、一般ERP系统有哪些模块?
你实施过几个?
一般ERP都会包括以下几个模块:
业务模块,生产模块,采购模块,仓库管理模块,财务管理模块,物料需求模块,生产工艺模块,生产排程模块,成本模块;有的ERP厂商分的更细,财务管理中会分为应收应付模块,会计分录模块,总帐模块等等。
备注:
在ERP各个模块中,成本模块与生产排程模块是最难实施的,若企业有实施这两个模块,最好要找一个有过这方面实施经验的实施经理,可以达到事半功倍的效果,毕竟没有企业想把自己当作一个实验品给对方做实验。
问题3、在以前的工作中,有没有累积一些好的实施方法?
ERP项目实施现在已经发展的比较成熟,已经出来了一些方法论或者技巧,可以从这方面考察应聘这对这个行业的熟悉程度。
一般来说,有这几种方法:
在系统选型时,有"借鸡生蛋"的技巧,借助别人的项目实施经验来免费为我公司进行服务;在系统调研时,要"以史为鉴",总结历史教训,不在同一个地方犯同一个错误;在业务流程重组时,"成功可以复制",复制别人的标准流程;在实施上线时,"金钱大棒两手抓",建立一套奖惩制度;在培训时,建立"上岗证"制度,等等。
备注:
以上方法有些是业界的不公开的方法,但是都可以起到很有效的效果。
一般不要求应聘者能说出所有的方法论,只要能说出2-3种就已经是比较有经验的人才,一般就可以胜任的。
问题4、以前实施过哪家公司的软件?
什么行业的?
答案:
ERP竞争越来越激烈,所以,各个ERP厂商都有一些行业性的解决方案,如有的适合制造业,有的是服装行业,有的是电力行业,又或者商业流通行业。
所以,一般可以问应聘者实施过哪个行业的ERP,看有否本行业的实施经验。
问题5、一般如何解决由于系统引起的各个部门之间的矛盾?
备注:
这个没有标准答案,主要看应聘者的协调能力。
因为ERP实施会涉及到各个部门的即得利益,会遭到部分员工的抵制,所以,人事要考察应聘者是否有协调能力。
ERP实施题目:
1、MRP分为那二个阶段?
MRP主要解决了制造业那四个问题?
(25分,其中第一问9分)
2、MRP到ERP的发展历程?
(10分)
3、ERP的思想主要是什么?
它与MRPII的区别是什么?
(20分)
4、ERP管理方式的特点是什么?
(20分)
5、ERP对企业及你个人工作有什么效益?
(25分)
面试时的笔试题:
1.什么是ERP、MRP及MRPⅡ?
它们的英文完整拼写分别是什么?
(10分)
2.什么是BOM和ECN?
它们的完整英文拼写是什么?
什么是替代料(10分)
3.订单分为哪几类?
它们的特征分别是什么?
(10分)
4.MRP分为哪二类?
分别适用于什么情形(10分)
5.请简述xx需求、已分配量、可用库存、在途量、计划在途、净需求、预计结存、下达量分别是什么?
MRP基本运算公式是什么?
(20分)
6.请完整简述电子制造业ERP作业流程(15分)
7.在SQL2000数据库中有一名称为Orders的表.包含的字段依次是ID、Order_NO、Order_Num、Order_Date,请自定义数据分别完成插入、更新、删除数据的操作.(15分)
8.请问SQL2000数据库的备份及恢复如何操作?
该考虑哪些因素?
(10分)
9.请分别简述实施ERP对公司的管理运行有哪些好处或帮助!
(10分)
我个人理解为:
以各种单据为表示,结合你对实际企业xxERP流程的理解,并以优化的思想,站在软件厂商的角度认为应该推出怎么的系统以实现企业实际的需求
其实就是把财务,物流和生产xx的必用单据列出来,并串连起来,衔接成一个整体。
这种面试就到这份上了够了
1.什么是ERP、MRP及MRPⅡ?
它们的英文完整拼写分别是什么?
(10分)
2.什么是BOM和ECN?
它们的完整英文拼写是什么?
什么是替代料(10分)
3.订单分为哪几类?
它们的特征分别是什么?
(10分)
4.MRP分为哪二类?
分别适用于什么情形(10分)
5.请简述xx需求、已分配量、可用库存、在途量、计划在途、净需求、预计结存、下达量分别是什么?
MRP基本运算公式是什么?
(20分)
6.请完整简述电子制造业ERP作业流程(15分)
7.在SQL2000数据库中有一名称为Orders的表.包含的字段依次是ID、Order_NO、Order_Num、Order_Date,请自定义数据分别完成插入、更新、删除数据的操作.(15分)
8.请问SQL2000数据库的备份及恢复如何操作?
该考虑哪些因素?
(10分)
9.请分别简述实施ERP对公司的管理运行有哪些好处或帮助!
(10分)
1.对ERP的理解和了解
ERP的英文全称为EnterpriseResourcePlanning,中文翻译为企业资源计划。
在制造业ERPxx,核心的内容一个是仓库管理,另一个是物料需求分析。
从字面上来说,仓库管理就是使用ERP软件来实时登录当前的生产资源的使用情况、库存信息以及出入库信息。
这样,ERP在当xx起到的是一个账本的作用,能够方便企业管理人员对当前生产所需原料的数量、使用情况有个很明确的了解;物料需求分析也就是MRP,是从当前企业在生产、销售、采购的数据xx分析出生产过程xx需要采购多少原材料,以便顺利进行生产活动。
物料需求分析联系着生产与原材料的采购活动,而库存管理联系着企业的生产、销售活动。
从而将企业的整个制造相关的活动管理起来,以实现高效的,精确的管理。
这就是ERP的目的。
当然,企业资源包括资金流的出入管理、人事管理等。
2.请具体回答ERPandMRPII 的联系与区别。
MRPII与ERP的最大区别是将物流,信息,资金从制造部分扩展到企业的所有资源(分销资源,人力资源,服务资源,全面质量管理等)及市场信息和资源,并且要求能够处理工作流。
另外,随着企业不断扩大,多集团,多公司,多地点的协同工作方面MRPII也不能满足要求。
以及,对整个供给链的管理MRPII也不能支持。
3.请具体回答什么是BOM以及它的作用是什么。
全称:
BillofMaterial。
物料清单(bom)是生产某产品所需要的零件/原材料的清单。
从作用功能上来看,分为:
工艺bom,生产bom。
作用包括:
1。
销售部门根据工程技术部搭好的BOM的成品号下销售订单。
2。
采购部根据BOM采购原材料。
3。
物资部根据BOM发放物料和生产换件等。
4。
生产部根据BOM和工艺完成生产。
4.你认为一个咨询xx应该具备哪些素质
首先:
应该非常熟知ERP的原理和企业的运营流程。
对行业的规范和标准也很熟知。
2。
对实施的ERP软件的各个功能细节很熟知。
3。
很强的沟通能力和技巧。
4。
有一定的组织会议和培训能力。
5。
最好还会操作数据库,比如:
懂SQL等等。
5.什么是ECN
ECN工程变更通知单是英文EngineeringChangeNotice的简写6.请简述xx需求、已分配量、可用库存、在途量、计划在途、净需求、预计结存、下达量分别是什么?
MRP基本运算公式是什么?
MRP通用计算公式:
净需求=xx需求+已分配量+安全库存-计划在途-实际在途-可用库存
xx需求量:
不考虑库存、制造、采购的需求量,相对于净需求而言。
假如是独立需求,那么xx需求=主生产计划需求量/(1–料品不良率)。
假如是相关需求,那么xx需求=上层料品的下达量。
其中独立需求是指某一存货项目的需求与其他项目需求没有xx,如生产的最终产品,它是企业生产的可以销售的产品项目通常位于产品结构表的最上层。
而相关需求是指某一存货项目的需求是由另一项目需求有关并可因而推算,如半成品、原料。
它是可以通过最终产品的需求量而计算得到半成品、原料的需求量。
成品的xx需求即订单欠交量(生产欠交量)。
一阶半成品或物料的xx需求即是抓的成品的净需求。
而二阶或其以下的半成品或物料的xx需求又是抓的二阶或上一阶半成品的净需求。
已分配量:
尚保存在仓库中(假想入足库的状况)但已分配给制单的料品数量。
实际上就是物料控制档中欠发数量。
即已分配量=应发数量-实发数量。
安全库存量:
为防止各种异常导致缺料从而特地额外增加的需求量,通常也可以理解为备品数量
计划在途量:
跑出MRP后从已生成了采购计划到生成采购单的中间过程的需采购数量实际在途量:
分为采购在途和制造在途。
采购在途:
已审核未结案的采购单的欠交数量。
制造在途:
已审核未结案的制造单的未入库数量
可用库存量:
一般是指所有仓别中可用的的良品实物库存数量(可用库存=库存量-安全存量.)但对于跑MRP时运算公式中的可用库存则是本次抓上一笔订单(制造单)的预计结存,是理论可用库存!
其实假想有按日期先后顺序下的三个订单(制造单)A、B、C,A的预计结存就是B的可用库存,B的预计结存就是C的可用库存.依此类推下去就是本次跑MRP时的物料的可用库存就是用到或生产些物料的上一笔订单或制造单的预计结存量.
预计结存量:
预计结存量=下达量+可用库存+在途量+计划在途量-xx需求-已分配量,是物料整体上的存量结算
净需求量:
依MRP计算公式计算出来的数量.
逾期计划量:
指在物料的需求日期之后总的的物料计划在途数量.
逾期在途量:
指在物料的需求日期之后的总的物料采购在途数量.下达量:
指物料的实际下达量,通常就是净需求量实际下达的需求量,其数据来源为净需求量,但可能由于料品订货规则不同而和净需求量有一定的差异。
7.请简述实施ERP对公司的管理运行有哪些好处或帮助!
整合并优化企业业务流程,使业务流程更加合理,提高工作效率;根据系统反馈的情况纠正管理中的问题;保证了数据的一致性、时时性、完整性,为管理者提供实时精确的数据,以便于作出正确的決策;持续改善管理,提高企业竞争力.8.ERP成功的要害清楚的范围,明确的目标和重点,高层领导有力支持,专业精干的项目团队,业务部门的积极参与,对基础数据和业务数据的及时、规范和精确性高度重视,良好的沟通和协调机制,是ERP系统成功应用的要害,也是ERP项目取得应用效果的前提条件。
1,统计函数avg,count,max,min,sum
1维护数据库的完整性、一致性、你喜欢用触发器还是自写业务逻辑?
为什么?
答:
尽可能用约束(包括CHECK、主键、唯一键、外键、非空字段)实现,这种方式的效率最好;其次用触发器,这种方式可以保证无论何种业务系统访问数据库都能维持数据库的完整性、一致性;最后再考虑用自写业务逻辑实现,但这种方式效率最低、编程最复杂,当为下下之策。
2什么是事务?
什么是锁?
答:
事务是指一个工作单元,它包含了一组数据操作命令,并且所有的命令作为一个整体一起向系统提交或撤消请求操作,即这组命令要么都执行,要么都不执行。
锁是在多用户环境中对数据的访问的限制。
SqlServer自动锁定特定记录、字段或文件,防止用户访问,以维护数据安全或防止并发数据操作问题,锁可以保证事务的完整性和并发性。
3什么是xx,有什么优点?
答:
xx象书的目录类似,xx使数据库程序无需扫描整个表,就可以在其中找到所需要的数据,xx包含了一个表中包含值的列表,其中包含了各个值的行所存储的位置,xx可以是单个或一组列,xx提供的表中数据的逻辑位置,合理划分xx能够大大提高数据库性能。
4视图是什么?
游标是什么?
答:
视图是一种虚拟表,虚拟表具有和物理表相同的功能,可以对虚拟表进行增该查操作,视图通常是一个或多个表的行或列的子集,视图的结果更容易理解(修改视图对基表不影响),获取数据更容易(相比多表查询更方便),限制数据检索(比如需要隐藏某些行或列),维护更方便。
游标对查询出来的结果集作为一个单元来有效的处理,游标可以定位在结果集的特定行、从结果集的当前位置检索一行或多行、可以对结果集中当前位置进行修改、
5什么是存储过程?
有什么优点?
答:
存储过程是一组予编译的SQL语句,它的优点有1.允许模块化程序设计,就是说只需要创建一次过程,以后在程序中就可以调用该过程任意次。
2.允许更快执行,如果某操作需要执行大量SQL语句或重复执行,存储过程比SQL语句执行的要快。
3.减少网络流量,例如一个需要数百行的SQL代码的操作有一条执行语句完成,不需要在网络中发送数百行代码。
4.更好的安全机制,对于没有权限执行存储过程的用户,也可授权他们执行存储过程。
6什么是触发器?
答:
出发器是一种特殊类型的存储过程,出发器主要通过事件触发而被执行的,触发器的优点:
1.强化约束,触发器能够提供比CHECK约束。
2.跟踪变化,触发器可以跟踪数据库内的操作,从而不允许未经允许xx的更新和变化。
3.联级运算,比如某个表上的触发器中包含对另一个表的数据操作,而该操作又导致该表上的触发器被触发
2,oracleCertificationProgram(OCP认证)的题目
(1)A表中有100条记录.Select *FROMAWhereA.COLUMN1=A.COLUMN1这个语句返回几条记录?
(简单吧,似乎1秒钟就有答案了:
)
(2)CreateSEQUENCEPEAK_NOSelectPEAK_NO.NEXTVALFROMDUAL-->假设返回110秒中后,再次做SelectPEAK_NO.NEXTVALFROMDUAL-->返回多少?
(3)SQL>connectsysassysdbaConnected.SQL>insertintodualvalues('Y');1rowcreated.SQL>commit;Commitcomplete.SQL>selectcount(*)fromdual;COUNT(*)----------2SQL>deletefromdual;commit;-->DUAL里还剩几条记录?
JUSTTRYIT
一些高难度的SQL面试题以下的null代表真的null,写在这里只是为了让大家看清楚根据如下表的查询结果,那么以下语句的结果是(知识点:
notin/notexists+null)
SQL>select*fromusertable;
USERIDUSERNAME
---------------------------1user12null3user34null5user56user6SQL>select*fromusergrade;
USERIDUSERNAMEGRADE
-------------------------- ----------1user1902null807user7808user890
执行语句:
selectcount(*)fromusergradewhereusernamenotin(selectusernamefromusertable);
selectcount(*)fromusergradegwherenotexists
(selectnullfromusertabletwhererieridanernamername);
结果为:
语句1( 0) 语句2 ( 3)
A:
0B:
1C:
2D:
3E:
NULL2
在以下的表的显示结果中,以下语句的执行结果是(知识点:
in/exists+rownum)
SQL>select*fromusertable;
USERIDUSERNAME
---------------------------1user12user23user34user45user5SQL>select*fromusergrade;
USERNAMEGRADE
--------------------------
user990
user880
user780
user290
user1100
user180
执行语句
Selectcount(*)fromusertablet1whereusernamein(selectusernamefromusergradet2whererownum<=1);Selectcount(*)fromusertablet1whereexists(select'x'fromusergradet2wherernamernameandrownum<=1);
以上语句的执行结果是:
( ) ( )A:
0B:
1C:
2D:
3
根据以下的在不同会话与时间点的操作,判断结果是多少,其中时间T1原始表记录为;
select*fromemp;
EMPNODEPTNOSALARY
-----------------
100155
101150
select*fromdept;
DEPTNOSUM_OF_SALARY
-------------------
1105
2可以看到,现在因为还没有部门2的员工,所以总薪水为null,现在,
有两个不同的用户(会话)在不同的时间点(按照特定的时间顺序)执行了一系列的操作,那么在其中或最后的结果为:
timesession1session2
-----------------------------------------------------------------------------
T1insertintoempvalues(102,2,60)T2updateempsetdeptno=2whereempno=100
T3updatedeptsetsum_of_salary=(selectsum(salary)fromempwhereemp.deptno=dept.deptno)wheredept.deptnoin(1,2);T4updatedeptsetsum_of_salary=(selectsum(salary)fromempwhereemp.deptno=dept.deptno)wheredept.deptnoin(1,2);T5commit;
T6selectsum(salary)fromempgroupbydeptno;问题一:
这里会话2的查询结果为:
T7commit;
=======到这里为此,所有事务都已完成,所以以下查询与会话已没有关系========
T8selectsum(salary)fromempgroupbydeptno;问题二:
这里查询结果为
T9select*fromdept;问题三:
这里查询的结果为
问题一的结果( ) 问题二的结果是( ) 问题三的结果是( )
A:
B:
--------------------------------
150150
260255
C:
D:
--------------------------------
1501115
2115250
E:
F:
--------------------------------
11051110
260255有表一的查询结果如下,该表为学生成绩表(知识点:
xx更新)
selectid,gradefromstudent_grade
IDGRADE
-------------------
150
240
370
480
530
690
表二为补考成绩表
selectid,gradefromstudent_makeup
IDGRADE
-------------------
160
280
560
现在有一个dba通过如下语句把补考成绩更新到成绩表中,并提交:
updatestudent_gradessets.grade=
(selectt.gradefromstudent_makeuptwheres.id=t.id);
commit;
请问之后查询:
selectGRADEfromstudent_gradewhereid=3;结果为:
A:
0B:
70 C:
null D:
以上都不对根据以下的在不同会话与时间点的操作,判断结果是多少,
其中时间T1session1session2
------------------------------------------------------------------------------
T1selectcount(*)fromt;--显示结果(1000)条T2deletefromtwhererownum<=100;
T3begindeletefromtwhererownum<=100;commit;end;/T4truncatetablet;
T5selectcount(*)fromt;--这里显示的结果是多少
A:
1000B:
900C:
800D:
0
一:
SQLtuning类
1:
列举几种表连接方式
hashjoin/mergejoin/nestloop(clusterjoin)/indexjoin
2:
不借助第三方工具,怎样xx看sql的执行计划
setautotonexplainplansetstatement_id=&item_idforselect*fromtable(dbms_xplan.display);.../b10752/ex_plan.htm
3:
如何使用CBO,CBO与RULE的区别
在optimizer_mode=choose时,如果表有统计信息(分区表外),优化器将选择CBO,否则选RBO。
RBO遵循简单的分级方法学,使用15种级别要点,当接收到xx询,优化器将评估使用到的要点数目,然后选择最佳级别(最少的数量)的执行路径来运行xx询。
CBO尝试找到最低成本的访问数据的方法,为了最大的吞吐量或最快的初始响应时间,计算使用不同的执行计划的成本,并选择成本最低的一个,关于表的数据内容的统计被用于确定执行计划。
4:
如何定位重要(消耗资源多)的SQL
selectsql_text
fromv$sql
wheredisk_reads>1000or(executions>0andbuffer_gets/executions>30000);
5:
如何跟踪某个session的SQL
execdbms_system.set_sql_trace_in_session(sid,serial#,&sql_trace);
selectsid,serial#fromv$sessionwheresid=