KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > h2 > samples > Function


1 /*
2  * Copyright 2004-2006 H2 Group. Licensed under the H2 License, Version 1.0 (http://h2database.com/html/license.html).
3  * Initial Developer: H2 Group
4  */

5 package org.h2.samples;
6
7 import java.math.BigInteger JavaDoc;
8 import java.sql.Connection JavaDoc;
9 import java.sql.DriverManager JavaDoc;
10 import java.sql.ResultSet JavaDoc;
11 import java.sql.SQLException JavaDoc;
12 import java.sql.Statement JavaDoc;
13 import java.sql.Types JavaDoc;
14
15 import org.h2.tools.SimpleResultSet;
16
17 public class Function {
18     
19     public static void main(String JavaDoc[] args) throws Exception JavaDoc {
20         Class.forName("org.h2.Driver");
21         Connection JavaDoc conn = DriverManager.getConnection("jdbc:h2:mem:", "sa", "");
22         Statement JavaDoc stat = conn.createStatement();
23         stat.execute("CREATE ALIAS ISPRIME FOR \"org.h2.samples.Function.isPrime\" ");
24         ResultSet JavaDoc rs;
25         rs = stat.executeQuery("SELECT ISPRIME(X), X FROM SYSTEM_RANGE(1, 20) ORDER BY X");
26         while(rs.next()) {
27             boolean isPrime = rs.getBoolean(1);
28             if(isPrime) {
29                 int x = rs.getInt(2);
30                 System.out.println(x + " is prime");
31             }
32         }
33         conn.close();
34     }
35
36     public static boolean isPrime(int value) {
37         return new BigInteger JavaDoc(String.valueOf(value)).isProbablePrime(100);
38     }
39     
40     public static ResultSet JavaDoc query(Connection JavaDoc conn, String JavaDoc sql) throws SQLException JavaDoc {
41         return conn.createStatement().executeQuery(sql);
42     }
43     
44     public static ResultSet JavaDoc simpleResultSet() throws SQLException JavaDoc {
45         SimpleResultSet rs = new SimpleResultSet();
46         rs.addColumn("ID", Types.INTEGER, 10, 0);
47         rs.addColumn("NAME", Types.VARCHAR, 255, 0);
48         rs.addRow(new Object JavaDoc[] { new Integer JavaDoc(0), "Hello" });
49         return rs;
50     }
51
52     public static ResultSet JavaDoc getMatrix(Connection JavaDoc conn, Integer JavaDoc id) throws SQLException JavaDoc {
53         SimpleResultSet rs = new SimpleResultSet();
54         rs.addColumn("X", Types.INTEGER, 10, 0);
55         rs.addColumn("Y", Types.INTEGER, 10, 0);
56         if(id == null) {
57             return rs;
58         }
59         for(int x = 0; x < id.intValue(); x++) {
60             for(int y = 0; y < id.intValue(); y++) {
61                 rs.addRow(new Object JavaDoc[] { new Integer JavaDoc(x), new Integer JavaDoc(y) });
62             }
63         }
64         return rs;
65     }
66
67 }
68
Popular Tags