要求: 
1.  网易的数据库笔试题,历史或现在都行,偶想大概了解一下难度,要不心里特没底,不知道考啥
2. 希望不要和别哥的这个帖子题目重复
http://topic.csdn.net/u/20080731/21/4b8eb01e-0523-4898-be3f-9cddc3b3a5b3.html一道题10分,分数不够可另开贴散分

解决方案 »

  1.   

    我有一次面试的时候,就遇到下列问题?
    1.隐式游标、显式游标的区别?2.什么是同义词?3.解释hint的使用4.什么是数据仓库?4答:
    数据仓库基本工作流程
    A. 数据抽取
    此步骤从业务系统中提取数据到数据仓库数据库中,基本上不作转换,但需要增量更新(即只提取最近修改和新增的数据,一般是以天为单位),以提高效率。
    B. 数据清理
    将步骤A抽取过来的数据进行清理,统一格式,比如同一个字段的数据在多个业务系统中都存在,但类型或长度可能不一致,在数据仓库中需要统一成一种类型,此工作一般在数据仓库数据库中用PL/SQL编写程序执行。
    C. 数据集成
    在此步骤中将步骤B中得到的数据根据需求按主题集成,此步骤是运算最复杂的环节,一般用PL/SQL编写程序实现,由于算法复杂,对一个最终数据往往会编写几个程序,依次运算,中间运算结果会分多个逻辑层存放。
    D. 数据展示
    此步骤实现最终用户看到的结果,即报表。一般需要借助第三方工具实现。以Business Object为例,完成此步工作还要分两个步骤,首先完成Universe设计,定义好语义层,然后制作报表,报表通过语义层中的数据对象查询数据,完成数据展示。最终用户可以通过web浏览器或特定客户端软件调阅报表。由于以上A、B、C三步需要按定时顺序执行,且各个业务系统同数据仓库数据库之间往往是异构数据库,因此常常需借助第三方工具,比如IBM公司的DataStage、CA公司的Advantage Data Transformer等,这些工具都可以完成数据源连接定义,异构数据库数据的抽取,工作流定义等工作。
      

  2.   

    顶下笨猫,帮你从itpub上面转过来的,这个题虽然比较基础,但也许有必要面试前也瞧一瞧.某外企dba面试题1. compare and contrast truncate and delete for a table;2. a table is classified as a parent table and you want to drop and re-create it. how would you do this without affecting the chiledren tables?3. Explain the difference between ARCHIVELOG mode and NOARCHIVELOG  mode and the benefits and disadvantages to each.4.Explain the difference between $oracle_home and $oracle_base.5. Explain the difference between a FUNCTION,PROCEDURE AND PACKAGE.6. Your database currently has one control file.You, after carefull consideration,decide that adding two more control file will provide better protection against a single point of failure at the control file level. To accomplish this ,you edit the initSID.ora file to point to the new location.control_files='/mydatabase/mydb1/control_01.ctl',
    '/mydatabase/mydb1/control_02.ctl',
    '/mydatabase/mydb1/control_03.ctl',You shut down your database normal and copy the control files to the new location.CP /mydatabase/mydb1/control_01.ctl  /mydatabase2/mydb1/control_02.ctl
    CP /mydatabase/mydb1/control_01.ctl  /mydatabase3/mydb1/control_03.ctlwhen you restart you database using the altered pfile,you receive the error
    ORA-00205:error in identifying control fileyou look in the alert log, and determine that you specified the incorrect path for the control files, which steps are required to resolve the problem and restart the database?7. You isssue the command 
    alter tablespace temp add datafile '/mydatabase/mydb1/temp02.dbf' 100m;
    and you receive the orror 
    ora-03217:invalid option for alter of temporary tablespace
    what is the problem with the statement?8. what kind of index does the following syntax create?
    create index address_state_idx
    on address
    pctfree 10
    tablespace mydb1idx
    nologging;9.when is the sga created in an oracle instance> when is the pag created in an oracle instance?10. where would you look for your database's national character set? what two new unicode character encoding sets did oracle introduce in 9i?
      

  3.   

    1. (1)truncate 是DDL操作,且删除的数据信息不计入redo log,效率高; delete DML操作,删除的信息写入redo log,效率低
       (2)truncate 降低了HWM;delete不降低HWM2.   disable外键约束,重建完成以后enable外键约束3.  归档和不归档模式的比较:
         归档模式下数据库是可以恢复到任意一个时间点的,而不归档的模式下数据库不能恢复到任意一个时间点,由于归档需要写归档日志,所以归档模式下数据库性能比不归档模式下稍差一点。
         
    4. ORACLE_HOME是Oracle数据库的安装目录,ORACLE_BASE则是Oracle产品的安装目录5.  package 是把一些互相之间有联系,或者业务上存在相近或者实现同一个目的的function, procedure组合在一起,便于迁移吧 。function是需要返回一个值的,procedure是用来操作数据的,不需要返回值的,如果需要返回值的话,可以通过out参数来返回。6.  关闭数据库,修改initSID.ora文件,然后重新启动数据库7.  alter tablespace temp add datafile '/mydatabase/mydb1/temp02.dbf' 100m;   不应该给temp表空间增加datafile,而是tempfile8.  普通的B树索引,但是不写入日志9.  nomount的时候就已经分配了sga. 啥时候分配的pga不记得了,赶紧查查去10.  数据库服务器端的字符集 select * from nls_database_parameters  
          9i新引入的unicode字符集还真的确实不知道哗啦啦答了一圈,不知道对不,欢迎大家使劲拍砖
      

  4.   

    从网上找的:网易公司DBA笔试题遇到了Linux一共三类,其它的说不说了,其中一类是关于Linux的,占比率为33%。linux题(不太熟,以前看得一点shell也忘完了。基本都没做)
    1.列举几种你熟悉的搜索系统性能数据的操作系统命令?
    2.有一个文本文件:source.txt,每行一个单词,写出搜索单词internet出现多少次的shell命令。
    3.以下linux核心参数的用途
    kernel.shmall
    kernel.shnmax
    kernel.shmmni上面的是笔试题。总结:linux得深入学习学习了,复习基础shell + 看实际程序 + 操作系统命令(尤其跟DB管理有关的)+ 有时间看看内核方面的。以前看的shell,因为仅仅是理论,没有实际运用经验,所以很快忘光光,真让自己写起来,觉得茫然无从下手。
      

  5.   

    我周六参加了网易的笔试
    考了两题数据库的1.写出学生表 增删查改的语句  (考基础的)2.有三张表  用not in not exists  left join 写出获奖图书的作者信息,比较哪一种最优。
      

  6.   

     
    有一3×3的棋谱如下 
    A1 0  A2 
    0  0  0 
    B1 0  B2 A1 A2 B1 B2 四个棋,可以走“日”字 
    例如 A1可以走到 B1 B2之间 用最少的步数,把每个棋子走到其对角 结果如图 B2 0  B1 
    0  0  0 
    A2 0  A1 写出步数,(用最少的步数)可以连走的算一步
      

  7.   

    考了linux的
    主要是创建文件 删除文件 改变用户权限 等基本命令
      

  8.   

    还有
    如果服务器 不支持session cookies 如何实现伪session?
      

  9.   

    create table dept(deptno varchar(10) primary key,dname varchar(10));create table emp(empno varchar(10) primary key,ename varchar(10),job varchar(10),mgr varchar(10),sal varchar(10),deptno varchar(10) references dept(deptno));drop table dept;drop table emp;insert into dept values ('1','事业部');insert into dept values ('2','销售部');insert into dept values ('3','技术部');insert into emp values ('01','jacky','clerk','tom','1000','1');insert into emp values ('02','tom','clerk','','2000','1');insert into emp values ('07','biddy','clerk','','2000','1');insert into emp values ('03','jenny','sales','pretty','600','2');insert into emp values ('04','pretty','sales','','800','2');insert into emp values ('05','buddy','jishu','canndy','1000','3');insert into emp values ('06','canndy','jishu','','1500','3');select * from dept;select * from emp;--1列出emp表中各部门的部门号,最高工资,最低工资select deptno as 部门号,max(sal) as 最高工资,min(sal) as 最低工资 fromemp group by deptno;--2 列出emp表中各部门job为'CLERK'的员工的最低工资,最高工资select max(sal) as 最高工资,min(sal) as 最低工资,deptno as 部门号 from emp wherejob='clerk' group by deptno;--3 对于emp中最低工资小于2000的部门,列出job为'CLERK'的员工的部门号,最低工资,最高工资select b.deptno as 部门号,max(sal) as 最高工资,min(sal) as 最低工资 from emp as bwhere job='clerk' and (select min(sal)from emp as a where a.deptno=b.deptno)<2000 group byb.deptno;--4 根据部门号由高而低,工资有低而高列出每个员工的姓名,部门号,工资select ename as 姓名,deptno as 部门号,sal as 工资 from emp order by deptno desc,sal asc;--5 列出'buddy'所在部门中每个员工的姓名与部门号select b.ename as 姓名,b.deptno as 部门号 from emp as b where b.deptno=(select a.deptno from emp as a where a.ename='buddy');--6 列出每个员工的姓名,工作,部门号,部门名select ename as 姓名,job as 工作,dept.deptno as 部门号,dept.dname as 部门名 from emp,deptwhere emp.deptno=dept.deptno;--7列出emp中工作为'CLERK'的员工的姓名,工作,部门号,部门名select ename as 姓名,job as 工作,dept.deptno as 部门号,dept.dname as 部门名 from emp,deptwhere emp.deptno=dept.deptno and job='clerk';--8对于emp中有管理者的员工,列出姓名,管理者姓名(管理者外键为mgr)select a.deptno as 部门号,a.ename as 员工,b.ename as 管理者 from emp as a,emp as b where a.mgr is not null and a.mgr=b.ename;--9 对于dept表中,列出所有部门名,部门号,同时列出各部门工作为'CLERK'的员工名与工作select a.deptno as 部门号,a.dname as 部门名,b.ename as 员工名,b.job as 工作 from dept as a,emp as b where a.deptno=b.deptno and b.job='clerk';--10 对于工资高于本部门平均水平的员工,列出部门号,姓名,工资,按部门号排序select b.deptno as 部门号,b.ename as 姓名,b.sal as 工资 from emp as bwhere b.sal>(select avg(a.sal) from emp as a where a.deptno=b.deptno) order by b.deptno;--11对于emp,列出各个部门中工资高于本部门平均工资的员工数和部门号,按部门号排序select a.deptno as 部门号,count(a.sal) as 员工数 from emp as awhere a.sal>(select avg(b.sal) from emp as b where a.deptno=b.deptno) group by a.deptno orderby a.deptno;--12对于emp中工资高于本部门平均水平,人数多与1人的,列出部门号,人数,平均工资,按部门号排序select count(a.empno) as 员工数,a.deptno as 部门号,avg(sal) as 平均工资from emp as a where (select count(c.empno) from emp as c where c.deptno=a.deptno andc.sal>(select avg(sal) from emp as b where c.deptno=b.deptno))>1group by a.deptno order by a.deptno;--13对于emp中低于自己工资至少5人的员工,列出其部门号,姓名,工资,以及工资少于自己的人数select a.deptno as 部门号,a.ename as 姓名,a.sal as 工资,(select count(b.ename) from emp as bwhere b.sal<a.sal) as 人数 from emp as awhere (select count(b.ename) from emp as b where b.sal<a.sal)>=5
      

  10.   

    笔试回来了考了一些IQ题3道Linux的题目,一道是自己熟悉的os的性能数据的命令,统计文件中指定字符串个数,linux的几个内核参数数据库的是大头,考了执行计划的执行顺序和解释,优化SQL
    写了一个动态的批量提交的存储过程
    实例恢复的大概流程,redo,undo的作用什么的生产环境压力很大的时候,说说自己会怎么做,类似的问题,记不请了大概就是这样吧结贴散分吧,如果笔试通过了再散吧
      

  11.   

    这个不错。我喜欢。
    这个应该是搞DBA的吧