登陆注册
19122000000012

第12章 常规的数据库搜索(2)

案例名称:模糊搜索

程序名称:fuzzy.aspx

<%@ Import Namespace="System.Data"%>

<%@ Import Namespace="System.Data.SqlClient"%>

<script language="VB"runat="server">

Sub Page Load(SenderAs Object,EAs EventArgs)

Dim connAs New

SqlConnection("server=localhost;database=pubs;uid=sa;pwd=;")

dim sqlAs String="select*from authors where au lname like"%M%""

Dim cmdAs New SqlCommand(sql,conn)

Dim drAs SqlDataReader

try

conn.Open()

dr=cmd.ExecuteReader()

while dr.read

response.write(dr("au id")&"——"& dr("au lname")&"——"& dr("au fname")

&"<br>")

end while

catch ex as Exception

response.write("出错了!")

finally

if not dr is nothing then

dr.close

end if

if not conn is nothing then

conn.close

end if

end try

End Sub

</script>

3.4使用JSP实现常规的数据库搜索

这一节的案例演示了基于数据库的搜索,使用JSP2.4技术,以及Oracle9i数据库中的scott用户的dept表。

3.4.1使用JSP实现精确搜索

案例名称:精确搜索

程序名称:exact.jsp

<%@ page contentType="text/html;charset=gbk"%>

<%@ page import="java.sql.*"%>

<html>

<body>

<%

try

{

Class.forName("oracle.jdbc.driver.OracleDriver");

}

catch(ClassNotFoundException e)

{

out.print(e.getMessage());

}

Connection conn=null;

Statement stmt=null;

ResultSet rs=null;

try

{

String url="jdbc:oracle:oci8:@ yuanyuan";

String user="scott";

String password="tiger";

conn=DriverManager.getConnection(url,user,password);

stmt=conn.createStatement();

String sql="select*from dept where deptno=10";

rs=stmt.executeQuery(sql);

while(rs.next())

{

String a=rs.getString("deptno");

String b=rs.getString("dname");

String c=rs.getString("loc");

out.print(a+" ; ; ; ;"+b+" ; ; ; ;"+c+"<br>");

}

}

catch(SQLException ee)

{

out.print(ee.getMessage());

}

finally

{

if(rs!=null)

{

try

{

rs.close();

}

catch(SQLException ex)

{

out.print(ex.getMessage());

}

}

if(stmt!=null)

{

try

{

stmt.close();

}

catch(SQLException ex)

{

out.print(ex.getMessage());

}

}

if(conn!=null)

{

try

{

conn.close();

}

catch(SQLException ex)

{

out.print(ex.getMessage());

}

}

}

%>

</body>

</html>

3.4.2使用JSP实现范围搜索

案例名称:范围搜索

程序名称:range.jsp

<%@ page contentType="text/html;charset=gbk"%>

<%@ page import="java.sql.*"%>

<html>

<body>

<%

try

{

Class.forName("oracle.jdbc.driver.OracleDriver");

}

catch(ClassNotFoundException e)

{

out.print(e.getMessage());

}

Connection conn=null;

Statement stmt=null;

ResultSet rs=null;

try

{

String url="jdbc:oracle:thin:@ localhost:1521:yuanyuan";

String user="scott";

String password="tiger";

conn=DriverManager.getConnection(url,user,password);

stmt=conn.createStatement();

String sql="select*from dept where deptno in(10,20,30)";

rs=stmt.executeQuery(sql);

while(rs.next())

{

String a=rs.getString("deptno");

String b=rs.getString("dname");

String c=rs.getString("loc");

out.print(a+" ; ; ; ;"+b+" ; ; ; ;"+c+"<br>");

}

}

catch(SQLException ee)

{

out.print(ee.getMessage());

}

finally

{

if(rs!=null)

{

try

{

rs.close();

}

catch(SQLException ex)

{

out.print(ex.getMessage());

}

}

if(stmt!=null)

{

try

{

stmt.close();

}

catch(SQLException ex)

{

out.print(ex.getMessage());

}

}

if(conn!=null)

{

try

{

conn.close();

}

catch(SQLException ex)

{

out.print(ex.getMessage());

}

}

}

%>

</body>

</html>

3.4.3使用JSP实现模糊搜索

这里演示使用“%”进行模式匹配的情况。

案例名称:模糊搜索

程序名称:fuzzy.jsp

<%@ page contentType="text/html;charset=gbk"%>

<%@ page import="java.sql.*"%>

<html>

<body>

<%

try

{

Class.forName("oracle.jdbc.driver.OracleDriver");

}

catch(ClassNotFoundException e)

{

out.print(e.getMessage());

}

Connection conn=null;

Statement stmt=null;

ResultSet rs=null;

try

{

String url="jdbc:oracle:thin:@ localhost:1521:yuanyuan";

String user="scott";

String password="tiger";

conn=DriverManager.getConnection(url,user,password);

stmt=conn.createStatement();

String sql="select*from dept whereDNAME like"%TI%"";

rs=stmt.executeQuery(sql);

while(rs.next())

{

String a=rs.getString("deptno");

String b=rs.getString("dname");

String c=rs.getString("loc");

out.print(a+" ; ; ; ;"+b+" ; ; ; ;"+c+"<br>");

}

}

catch(SQLException ee)

{

out.print(ee.getMessage());

}

finally

{

if(rs!=null)

{

try

{

rs.close();

}

catch(SQLException ex)

{

out.print(ex.getMessage());

}

}

if(stmt!=null)

{

try

{

同类推荐
热门推荐
  • 爆强女仙

    爆强女仙

    诛盘仙接纳世间万物,即使是椅子,只要有心,也可修仙铁匠之女苏如海前来拜师,一直当摆设的菜刀觉醒了,“你终于来了,我已等待了千年!”苏如海一来就是菜刀在手,惊动万仙。“既如此,我就封你为食仙。”苏如海不乐意啦,“仙尊,我不是来当厨子的!”“说说,你还有什么天赋?”“我可以再生,愤怒就会变巨人,通晓万物生灵。即使是椅子,我也知道它的话。还有,你们的财仙,只有与我在一起,才可善财呦。”
  • 外星总裁地球行

    外星总裁地球行

    “人生总有许多不如意,但无论如何,我们都应该坚强的活着,并努力的去争取自己的幸福,但同样,应该报复的,我们也绝对不应该手软。”主角:帝国首富,天蝎帝国公民不一样的文化背景,铸就与众不同的人生。
  • tfboys之完美的约定

    tfboys之完美的约定

    他们和她们本因不认识,却因种种原因成了朋友,并有着深厚的友谊。
  • 如果我不曾听见你的声音

    如果我不曾听见你的声音

    我的世界没有声音但我却听得到人心即便如此……
  • 盛夏繁华

    盛夏繁华

    男主面瘫,女主逗逼,有坑有虐有宠,坑渣男,虐贱女,宠女主。不喜误入。注:开学不更,只有寒暑假更。
  • 意念之剑

    意念之剑

    无尽大陆万族林立,芸芸众生,求仙问道。少年从孤岛中走出,参悟一柄遗留在岛上的神剑,修炼成自己的剑道……
  • 通灵王座

    通灵王座

    沟通天地万灵,寻封天王座。看夜黑白如何独闯天涯,踏上王座,成通灵王!
  • 帝少的女王大人

    帝少的女王大人

    星系暴动、星球异变、灵力外泄!隐藏在星球之下的古老遗迹纷纷现世,混乱之际古老的家族挺身而出维护这片土地安定。帝非,帝家的掌控人,绝色暴戾因为一次偶尔的机会认识北域苏家的女王苏洛。帝非开始走上一条追妻的不归路。该如何得到一个美人儿心,想追到一个女王该肿么破?!想要完好无损的追到一位女王该肿么破?!在线等!很急的!在苏洛眼里帝非就是麻烦的象征,在帝非眼里苏洛可是智慧和美丽的化身。看一个麻烦精如何俘虏一颗女王心。
  • 惊鸿争仙

    惊鸿争仙

    灭宗在即,可否割舍下师门温情!妖跟魔随,是否犯下了道门大忌!抉择判断,能否违背了天地良心!浩劫将起,当否撑得过滔天杀机!一手持弓,天下何处不可行!
  • 萌主系统

    萌主系统

    一觉醒来,萌妹附身,送我萌主系统;三年归来,白手起家,让我平步青云。忍辱负重的逗比少年,携手植入大脑的高能女神,脚踏贫民窟,踢翻大财团,搅动满城风雨,揭开繁华都市背后腥风血雨的混乱真相。看我颠覆规则,对抗强敌,逆袭萌主,走上人生巅峰!