文档详情

数据库面试题(卷).doc

发布:2018-10-26约11.27万字共263页下载文档
文本预览下载声明
数据库笔试题(含参考答案) 现在有个表:A(id ,name,regdate) B(id,groupid) C(id,name2) 写出下面的SQL语句 1.统计A表中每个月注册用户数 2.统计A表中有姓名相同的用户数 3.如果表A中有姓名相同的用户,把相同的查出,写入表C中 4.A中ID有多个相同的数据,A中姓名相同的ID只保留注册时间最大的数据 大家帮帮忙,写一下吧 1 select count(*),to_char(regdate,yyyymm) from A group by to_char(regdate,yyyymm); 2 select count(*) from (select name from A group by name having count(*) 1); 3 insert into C(name2) select name from A group by name having count(*) 1; 4 delete from A E where e.regdate (select max(regdate) from a X where E.id = X.id); redate(格式为2007/02/12) 日期自己转化一下 SQL select to_date(2007/02/12,yyyy/mm/dd) from dual; TO_DATE(2007/02/12,YYYY/MM/ 2007-2-12 十个经典的数据库面试问题 1.磁盘柜上有14块73G的磁盘, 数据库为200G 大小包括日志文件,如何设置磁盘(要说明这14磁盘是怎么用的)? 2.有两服务器群集,分别为node1和node2 现在要打win200系统补丁,打完后,要重新启动,如何打补丁,不能影响用户使用(要用群集的术语详细说明)。 3.有一个A 数据库,分别复制到B和C B 要求 每次数据更新 也同时更新,C 每天更新一次就行,如何制定复制策略! 4.有一个order 表,有90个字段,20个索引,15个复合索引,其中有3个索引字段超过10个,如何进行优化 5.有一个数据库200G大小,每天增加50M 允许用户随时访问,制定备份策略(详细说明)。 6.管理50台数据库,日常工作是检查数据库作业是否完成,你该如何完成这项检查工作? 7.自定义函数和存储过程的区别是什么,什么情况下只能用自定义函数,什么情况下只能用存储过程 8.SQL 2005 的新特性是什么 ? 与oracle 有什么区别? 9.DBA 的品质应该有哪些,你有哪些, 有什么欠缺的? 10。如果想配置SQL Mail 应该在服务器安装哪些软件! 数据库面试问题答案 1.磁盘柜上有14块73G的磁盘, 数据库为200G 大小包括日志文件,如何设置磁盘(要说明这14磁盘是怎么用的)? 这个问题应该是考察硬件知识和数据库物理部署。 首先需要知道这些磁盘是否要用于存放数据库备份文件和数据库性能(读/写)要求。来决定raid的级别。 1)、如果偏重于性能考虑,而且不用存放数据库备份文件的话,考虑使用raid0+1,这样可使用的磁盘容量为:14*73*50%=511G。 2)、如果读/写性能要求不高,而且还比较抠门的话,可以考虑raid5,这样可使用的磁盘容量为:13*73=949G。 至于如何使用应该是说数据库物理文件的部署。注意说出将tempdb,data file,log file分开存放以减少I/O竞争即可。其实现在的条带化磁盘一般都会自动将文件分存,人为的分布已经越来越不重要了。 2.有两服务器群集,分别为node1和node2 现在要打win200系统补丁,打完后,要重新启动,如何打补丁,不能影响用户使用(要用群集的术语详细说明)。 这个具体操作有点忘了。大致是:首先看哪个节点正在使用,通过节点IP(私有)访问另一个空闲节点,为其打上补丁,然后在群集管理器中停止该节点(也可以用命令行方式),重新启动。等到启动完毕,将切换使用节点,为另一个节点打补丁。然后重新启动。 3.有一个A 数据库,分别复制到B和C B 要求 每次数据更新 也同时更新,C 每天更新一次就行,如何制定复制策略! 这个应该考察的是复制知识。 a-b 1)、如果使用SQL Server复制功能,那么让a-b使用事务性复制方式(同步复制)。 2)、如果表不多,也可以自己写触发器,利用linkserver+distribute transaction。 a-c 1)、如果使用SQL Server复制功能,那么让a-b使用快照复制方式,在某一时间点进行一次性复制。 2)、也可以自己写bat,将a备份后,通过ftp传输备份介质,恢复c。(比较麻烦
显示全部
相似文档