oracle_jdbc_hibernate面试题.doc_第1页
oracle_jdbc_hibernate面试题.doc_第2页
oracle_jdbc_hibernate面试题.doc_第3页
oracle_jdbc_hibernate面试题.doc_第4页
oracle_jdbc_hibernate面试题.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一 选择题(1分 ,共20分)1.为了考虑数据的安全性,要求每个教师只能存取自己讲授的课程的学生成绩,应该创建_a) .视图 b).索引c).游标d).表2. 关于类型定义Number(9,2)说法正确的有_a)整数部分9位,小数部分2位,共11位b)整数部分7位,小数部分2位,共9位c)整数部分6位,小数点一位,小数部分2位,共9位d)以上说法均不正确3. 获取当前系统时间的查询语句是_a) Sysdateb) Select sysdatec) Select sysdate from dual;d) 以上都可以4. 在数据库中可以创建和删除表、视图、索引,可以修改表。这是因为数据库管理系统提供了_a)数据定义功能 b)数据操纵功能 c)数据维护功能 d)数据控制功能5. 下面所列条目中,哪一条不是标准的SQL语句?_a)ALTER TABLE b)ALTER VIEWc)CREATE TABLE d)CREATE VIEW6. 数据库的并发操作可能带来的问题包括_a).非法用户的使用 b)丢失更新c).数据独立性会提高 d).增加数据冗余度7. 使用sql查询时,使用where子句指出的是_a) 查询目标b) 查询条件 c)查询视图 d)查询结果8. 在Oracle中,有一个教师表teacher的结构如下:ID NUMBER(5)NAME VARCHAR2(25)EMAIL VARCHAR2(50)下面哪个语句显示没有Email地址的教师姓名_a)SELECT name FROM teacher WHERE email = NULL;b)SELECT name FROM teacher WHERE email NULL;c)SELECT name FROM teacher WHERE email IS NULL;d)SELECT name FROM teacher WHERE email IS NOT NULL;9. 在Oracle中,下面哪条语句当COMM字段为空时显示0,不为空时显示COMM的值_a) SELECT ename, NVL(comm, 0) FROM emp;b) SELECT ename, NULL(comm, 0) FROM emp;c) SELECT ename, NULLIF(comm, 0) FROM emp;d) SELECT ename, DECODE(comm, NULL, 0) FROM emp;10. 在Oracle中,有一个名为seq的序列对象,以下语句能返回序列值但不会引起序列值增加的是_a).select seq.ROWNUM from dual;b).select seq.ROWID from dual;c).select seq.CURRVAL from dual;d).select seq.NEXTVAL from dual;11. 有表一的查询结果如下,该表为学生成绩表:select id,grade from student_grade ID GRADE - - 1 50 2 40 3 70 4 80 5 30 6 90 表二为补考成绩表 select id,grade from student_makeup ID GRADE - - 1 60 2 80 5 60 现在通过如下语句把补考成绩更新到成绩表中,并提交: update student_grade s set s.grade = (select t.grade from student_makeup t where s.id=t.id); commit; 请问之后查询: select GRADE from student_grade where id = 3;结果为_A0B70CNullD以上都不对12. 在Oracle中,可用于提取日期时间类型特定部分(如年、月、日、时、分、秒)的函数有_a).DATEPART b).TO_CHAR c).TRUNC d).TIMPSTAMPAdfs13. 元素有一个cascade属性,如果希望Hibernate级联保存集合中的对象,casecade属性应该取什么值_A、noneB、saveC、deleteD、save-update14. 以下程序的打印结果是什么_tx = session.beginTransaction(); Customer c1=(Customer)session.load(Customer.class,new Long(1); Customer c2=(Customer)session.load(Customer.class,new Long(1); System.out.println(c1=c2); mit(); session.close();a)运行出错,抛出异常 b)打印false c)打印trued).编译报错15. 以下程序代码对Customer的name属性修改了两次:tx = session.beginTransaction(); Customer customer=(Customer)session.load(Customer.class, new Long(1); customer.setName(Jack); customer.setName(Mike); mit();执行以上程序,Hibernate需要向数据库提交几条update语句_a)、0 b)、1 c)、2 d)、316. 假设对Customer类的orders集合采用延迟检索策略,编译或运行以下程序,会出现什么情况?_Session session=sessionFactory.openSession();tx = session.beginTransaction();Customer customer=(Customer)session.get(Customer.class,new Long(1);mit();session.close(); Iterator orderIterator=customer.getOrders().iterator();a编译出错 b编译通过,正常运行,不显示任何信息c编译通过,正常运行,并显示出结果d编译通过,但运行时抛出异常17. 阅读下面代码: 1)Student s = new Student(); 2)s.setAge(20); 3)Session ses = factory.openSession(); 4)Transaction tx = ses.beginTransaction(); 5)ses.save(s); 6)s.setAge(30); 7)ses.update(s); 8)s.setAge(40); 9)ses.update(s); 10)mit(); 11)ses.close();执行到哪一句发出sql语句_a) 2 b) 3 c)4d)1018. 在使用了Hibernate的系统中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下面方法可行的是_a)配置客户和订单关联的cascade属性为save-updateb)配置客户和订单关联的cascade属性为allc)设置多对一关联的lazy属性为trued)设置多对一关联的lazy属性为false/lazy是延迟加载19. 下列关于PreparedStatement对象的说法错误的是_a) PreparedStatement对象继承了Statement对象b) PreparedStatement可以有效的防止sql注入c) PreparedStatement不能用于批量更新操作d) PreparedStatement可以存储预编译的Sql,从而提升执行效率20.在Hibernate关系映射配置中,inverse属性的含义是_。A、定义在节点上,声明要负责关联的维护B、声明在节点上,声明要对方负责关联的维护C、定义在节点上,声明对方要负责关联的维护D、声明在节点上,声明要负责关联的维护二 填空题(1题2分,其余1分,20分)1. 使用SELECT语句显示当前系统时间,显示格式为如:2009-03-25 20:13:43select to_char(sysdate, yyyy-MM-DD hh24:mi:ss) from dual;_2. 数据库事务的特性_、_、_、_3. 执行脚本estore.sql文件的两种方式_和_start_。4. 请写出两种清空表order中数据的方法_delect from order_和_truncate_。哪一种方式是彻底删除数据_truncate_5. JDBC编程中负责事务管理的类是_connection_;Hibernate编程中负责事务管理的类是_transaction_,开启一个事务使用_session_类的_beginTransaction_方法。提交一个事务使用_session_类的_commit_方法。6在Hibernate XML影射文件中描述主键生成机制,其属性描述了主键的生成策略,至少写出三种策略名_、_、_。 三 简答题(每题5分,共25分):1. 请分别简述jdbc和hibernate编程的步骤2. 请简述hibernate中get和load方法的区别。3. 以练习的S_emp表为基表查看薪资高于Chang员工经理薪资的员工信息select id, last_namefrom s_empwhere salary (select m.salary4. 查询平均工资大于1200的部门,并显示这些部门的部门编号,名字,和平均工资5. 请简述Statement对象和PreparedStatement对象的关系和区别。四 程序填空:(20分)使用hibenrate框架操作数据库非常的方便,现有oracle数据库服务器(00),数据库SID(数据库服务名):xe,用户名:briup,密码:briup. 有一个实体类User(id,name,age,gender)和数据库中s_user(id,name,age,gender)的映射文件,请根据提示完成代码填空和代码编写: 1.hibernate.cfg.xml_(1.5分)_(0.5分)_(0.5分)_(1分)org.hibernate.dialect.Oracle9Dialect2.User.classPackage com.briup.pojo;Public class UserPrivate long id;Private String name;Private int age;Private String gender;Getter/setter.省略3.user.hbm.xml (0.5分)1. 编写程序完成向数据库插入一条信息,(8分)2. 编写程序完成修改id为1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论