JAVA数据库面试题集.pdf_第1页
JAVA数据库面试题集.pdf_第2页
JAVA数据库面试题集.pdf_第3页
JAVA数据库面试题集.pdf_第4页
JAVA数据库面试题集.pdf_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

请写出 SQL 语句计算今天距离 2005 元旦的分钟数。答案: select datediff(minute,01/01/2005,getdate() as minutes 1、 请一句 SQL 写出:如果 person(personname,deptname) 表中没有 “财务部”的“张三” ,那 么请增加该人员。 set nocount on if EXISTS(select * from person where personname=张三and departname=财务部 ) begin raiserror(%s)的记录已经!,16,1,财务部的张三) return end begin transaction insert person(personname,departname) values(张三,财务部) if ROWCOUNT1 goto Error commit transaction return-提前返回 -错误处理 Error: rollback raiserror(添加失败,16,1) 答案二:if not EXISTS(select * from person where personname=张三 and deptname=财务 部) insert into person(personname,deptname) values(张三,财务部) 2、 请取出表 test (id identity(int,1,1) 的第三条记录。 Select top 1 * from(select top 3 * from test order by id desc) temp 3、 有表 test RowVal 1101 1102 21 请写 SQL 语句将表 test 的内容显示为下边内容 RowVal 1101 1102 2101 2102 答案:selecta.row,a.valfromtest as a leftjointest as bonb.val=a.row where a.valb.val union selecta.row,b.valfromtest as a leftjointest as bona.val=b.row where b.vala.row 4、 计算库存结余 test InvinouttypeIquantity 001in300 001out200 002in50 答案: :select sum(case when inouttype=in then iquantity else -iquantityend) as 结余金额 from test3 6请将表 test CusinvMoney 北京苹果100 北京李子200 上海苹果400 转变成 Cus苹果李子 北京100200 上海4000 答案:declare sql varchar(8000) set sql = select cus select sql = sql + , sum(case inv when + inv + then money else 0 end) + inv + from (select distinct inv from test2) as a set sql = sql + from test2 group by cus exec(sql) 更好的答案。 。 。 7 有表 test PersoncodePersonname 001Anny 002Liszt 003Devy 写一个过程 create proceduregetselperson(svarchar(200) begin end; IF EXISTS(SELECT name FROM sysobjects WHERE name = getselpersonAND type = P) DROP PROCEDURE getselperson GO CREATE PROCEDURE getselperson( Personcode1 varchar(200) = 001, Personcode2 varchar(200) = 002) AS SET NOCOUNT ON beginTRANSACTION SELECT * FROM test7 WHERE Personcode LIKE Personcode1 or Personcode LIKE Personcode2 IF ROWCOUNT2 GOTO lblError COMMIT TRANSACTION RETURN lblError: ROLLBACK RAISERROR(失败!,16,1) 传入参数001,002,返回表 8 请写 SQL 语句更新表 test 中 issingle personFriendIssingle IidpersoncodePersonname 1001Anny 2002liszt annyLisztNull LisztAnnyNull devyKevenNull 更新后的结果是: PersonFriendIssingle AnnyLiszt0 LisztAnny0 DevyKeven1 答案:UPDATE test SET Issingle = 1 where Person = Devy; UPDATE test SET Issingle = 0 where Person Devy; 9 请写 SQL 语句将下表 test personttimeIotype 0018:001 00112:002 00113:001 00117:002 0028:001 00212:002 转换成表 WpidpersoninOut 10018:0012:00 200113:0017:00 30028:0012:00 select identity(int,1,1) as wpid ,person,in = max(case when iotype = 1then ttime else null end), out= max(case when iotype = 2then ttime else null end) into # from (select *,case when datepart(hh,cast(2001-01-01 +ttime as datetime) 12 then 1 else 0 end as type from test) a group by person,type 10有表 test PersoncodettimeIotype 0018:001 0018:051 00112:002 请写 SQL 语句将两行 IOTYPE 相同,时间间隔不足 10 分钟的第二条记录提取出来。 答案:SELECT * FROM (SELECT * AS a FROM test, SELECT * AS b FROM test) WHERE a.Iotype = b.Iotype AND a.time - b.time 10 附加题(如有余力,可以做): 11将表 TEST SEQQTYIO 11001 21201 31301 460-1 590-1 转换成表 SeqqtyLeft 11000 212070 3130 12有表 TEST IDFATHERCHIELD 1AA1 2AA2 3AB 4BB1 5BB2 转成表 COLDECLASSISEND A10 B20 A121 A221 B131 B231 JAVA 部分 1、 请解释下什么是 HTML HTML 既 Hypertext Marked Language,即超文本标记语言,是一种用来制做超文本文档的简 单标记语言。 用 HTML 编写的超文本文挡称为 html 文挡,它能独立于各种操作系统平台(如 unix,windows,linux 等); 所谓超文本,因为它可以加入图片,声音,动画,影视等内容,因为它可以从一个文件跳转 到另一个文件, 与世界各地主机的文件连接, 还可以与其他动态脚本语言结合创造动态的网 页。 HTML 只不过是组合成一个文本文件的一系列标签。 2、 JAVA 和 JAVASCRIPT 有什么关系 Java 是 sun 公司推出的面向对象的编程语言,它是一种通过解释方式来执行的语言,语法规 则和 C+类似,同时它也是一种跨平台的程序设计语言。它主要面向应用软件方面。 javaScript 是一种嵌入到 HTML 语言中的一种脚本语言,他和 java 没关系。 3、 JAVA 的编译命令是什么 javac 4、 请就 JSP 和 ASP 做个简要的对比分析 jsp 和 asp 在技术方面有许多相似之处,两者都是为基于 web 应用实现动态交互网页制作 提供的技术环境支持。 jsp 和 asp 也用许多的不同点,jsp 技术基于平台和服务器独立的,输入支持来自广泛的,专 门的,各种工具包,服务器的组件和数据库产品开发商所提供。相比之下,ASP 技术主要 依赖微软的技术支持,jsp 可运行在绝大多数的流行平台,包括 solari 操作系统微软的视 窗系统,windows,Linux,及其他 UNIX 系列平台产品,asp 只能运行到 windows 上。 jsp 可重用行比较好,静态代码和动态代码分离,而 asp 静态代码和动态代码混合在一起, 可维护性,可重用性不好。 Jsp 的脚本语言是 java,而 asp 的脚本语言是 vbscript 或 jscript。Java 是成熟的,强大的,易 扩充的编程语言。 5、 请区分下 JSP,SERVLET,JAVAAPPLET JSP 主要关注于 HTML(或者 XML)与 Java 代码的结合,以及加入其中的 JSP 标记。如果 一个支持 JSP 的服务器遇到一个 JSP 页面,它首先查看该页面是否被编译成为一个 servlet。 由此可见,JSP 被编译成 servlet,即被转变为纯 Java,然后被装载入服务器执行。当然,这 一过程,根据不同的 JSP 引擎而略有不同。 SUN 首先发展出 SERVLET,其功能比较强劲,体系设计也很先进,只是,它输出 HTML 语句还是采用了老的 CGI 方式, 是一句一句输出, 所以, 编写和修改 HTML 非常不方便。所 以后来出现了 jsp 技术,方便了用户的 web 程序的开发。 Servlet 也是一个特殊的 java 类。 “Applet” (小应用程序) , 用编译器将它编译成类文件后, 将它存在 WWW 页面中, 并在 HTML 档上作好相应标记,用户端只要装上 Java 的客户软件就可以在网上直接运行“Applet” 6、 简要介绍下 TOMCAT 和 IIS 的区别 Tomcat 是一种 servlet 的解释器,主要用来作为用 java,jsp,javabean,servlet 开发的 web 程序。 IIS 是微软开发的网页服务器,主要用来解析用 asp,.net 开发的 web 动态程序及静态网页。 7、 如何把整形 1 转换成字符串,又如何把字符串 001 转换成整数呢? class Str public static void main(String args) int i=1; System.out.println(String.valueOf(i); String str=“001“; System.out.println(Integer.parseInt(str); 8、 请取出字符串【001 计算机】 中的 “计算机” class Str public static void main(String args) String str=“001 计算机“; System.out.println(str.substring(3); 9、 请将字符串a,b,c,d 转成一维数组 public class test public static void main(String args) String str1=“a,b,c,d“; char str=str.toCharArray(); for(int i=0;istr1.length;i+) System.out.println(str1i); 10、请计算现在距离奥运会还有多少天 import java.util.*; import java.text.*; public class test publicstatic longgetT(Dated1,Dated2) longd=d2.getTime()-d1.getTime(); returnd/(1000*60*60*24); public staticvoid main(String args) /System.out.println(getT(DateFormat.getDateInstance().format(new Date/ (),DateFormat.getDateInstance().format(new Date(2008,8,8); System.out.println(getT(new Date(2007,11,25),new Date(2008,8,8); /System.out.println(DateFormat.getDateInstance().format(new Date(); 11、请写出将你所在地的邮政编码转换成 2 进制的算法 12、请举例说明 session 如何存取变量 我做的书城中曾用到的: session 存储变量: session.setAttraibute(“admin”,new Admin(); session 取变量: session.getAttribute(“admin“);返回 object 对象,使用时 session 存储的对象时必须进行类 型转换。 13、请举例说明:如何判断网页中选中的 raidobutton 的值 String temp=request.getParameter(“radiobutton 的名字”); If(temp=null) temp=”; 14、请举例说明:如何判断网页中选中的 select 的值 String temp=request.getParameter(“select 的名字”); If(temp=null) temp=”; 15、用 JSP 如何实现页面跳转?用 JAVASCRIPT 则如何实现呢? Jsp 实现页面跳转可通过以下几种方式: response.sendRedirect(String path); 命令; 在 servlet 中(我的书城中曾用到的): request.getRequestDispatcher(“./admin/managerAddDeal.jsp“).forward( request, response); 我的书城中曾用到的 javascript 实现页面跳转: alert(“你还没登 录”);window.location.href=/bookshop/admin/login.jsp; 16、请做一个页面框架(FRAMESET)的例子 我的书城中曾用到的: 网店后台管理 if (top != self)top.location.href = “index.jsp“; 此网页使用了框架,但您的浏览器不支持框架。 17、JSP 如何连接 SQL SERVER,请写个示例 我平时做的一个小例子: public class UseExecuteQuery /* * param args */ public static void main(String args) String url=“jdbc:microsoft:sqlserver:/localhost:1433;DataBaseName=jsp_test“; String userName=“sa“; String password=“; String sql=null; Connection conn=null; Statement stmt=null; try /第一步:加载驱动器 Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver“); System.out.println(“加载成功“); catch(ClassNotFoundException e) System.out.print(“ClassNotFoundException“); System.out.print(“加载驱动器类时出现异常“); try /第二步:调用 DriverManager.getConnection 静态方法得到数据库连接 conn=DriverManager.getConnection(url,userName,password); System.out.println(“连接成功“); /创建 statement stmt=conn.createStatement(); sql=“select * from student where stu_id=12“; /sql=“INSERTINTO student(stu_id,name,address,birthdate,age)“+“VALUES(12,zhangjun,shanghai,1984/07/01,23) “; /stmt.executeUpdate(“delete from student where stu_id=12“); ResultSet rs=stmt.executeQuery(sql); /System.out.println(“Insert a row successful“); while(rs.next() String id=rs.getString(1); String name=rs.getString(2); String address=rs.getString(3); System.out.println(id+“+name+“+address); rs.close(); stmt.close(); catch(SQLException e) System.out.println(e.getMessage(); System.out.println(“出现 sqlException 异常“); finally try System.out.println(“关闭数据库的连接“); /关闭语句和数据库连接 /stmt.close(); if(conn!=null) conn.close(); catch(SQLException e) System.out.println(“Close SQLException“); System.out.println(“关闭数据库连接时出现异常“); 数据库连接也可通过连接池。 18、请写一个 BEAN,显示当前日期和时间 import java.util.*; import java.text.*; class str public void displayDate() System.out.println(DateFormat.getDateInstance().format(new Date();

温馨提示

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

评论

0/150

提交评论