adding test scripts
[csql.git] / test / jdbc / network / ParameterMetadata / ParaMetaTest3.java
blobf587bba8c7bf11a2684a36f426c188b4d42ca887
1 //Test for getParameterCount();
2 // and getParameterTypeName(param); in ParameterMetaData
4 import java.sql.*;
5 public class ParaMetaTest3
7 public static void main(String[] arg)
9 try
11 Class.forName("csql.jdbc.JdbcSqlDriver");
12 Connection con=DriverManager.getConnection("jdbc:csql://localhost:5678","root","manager");
13 Statement cStmt=con.createStatement();
14 cStmt.execute("CREATE TABLE T1 (f1 integer, f2 smallint, f3 tinyint, f4 bigint, f5 float, f6 char(10), f7 date, f8 time, f9 timestamp);");
15 con.commit();
16 PreparedStatement stmt=null,selStmt=null;
17 stmt=con.prepareStatement("INSERT INTO T1 VALUES(?,?,?,?,?,?,?,?,?);");
18 //Parameter Test
21 ParameterMetaData paramMetaData = null;
22 paramMetaData = stmt.getParameterMetaData();
23 if (paramMetaData == null) {
24 System.out.println("db vendor does NOT support ParameterMetaData");
25 } else {
26 System.out.println("db vendor supports ParameterMetaData");
27 int paramCount = paramMetaData.getParameterCount();
28 System.out.println("paramCount=" + paramCount);
29 System.out.println("param number param SQL type name");
30 System.out.println("-----------------------------------------------");
31 for (int param = 1; param <= paramCount; param++) {
32 System.out.print(" "+param+" ");
33 String paramTypeName = paramMetaData.getParameterTypeName(param);
34 System.out.println(paramTypeName);
38 int ret=0;
39 for(int i=0;i<10;i++)
41 stmt.setInt(1,i);
42 stmt.setShort(2,(short)(i+1));
43 stmt.setByte(3,(byte)(i+2));
44 stmt.setLong(4,(long)i);
45 stmt.setFloat(5,(float)1000+i);
46 stmt.setString(6, String.valueOf("Bijaya"+i));
47 stmt.setDate(7,Date.valueOf("2008-03-21"));
48 stmt.setTime(8,Time.valueOf("18:00:00"));
49 stmt.setTimestamp(9,Timestamp.valueOf("2008-03-21 18:00:00"));
50 ret=stmt.executeUpdate();
51 if(ret!=1) break;
53 stmt.close();
54 con.commit();
55 selStmt=con.prepareStatement("SELECT * FROM T1 where f2 = ? and f1 = ? and f3 = ?");
58 //Parameter metadataTest
61 paramMetaData = selStmt.getParameterMetaData();
62 if (paramMetaData == null) {
63 System.out.println("db vendor does NOT support ParameterMetaData");
64 } else {
65 System.out.println("db vendor supports ParameterMetaData");
66 int paramCount = paramMetaData.getParameterCount();
67 System.out.println("paramCount=" + paramCount);
68 System.out.println("param number param SQL type name");
69 System.out.println("-----------------------------------------------");
70 for (int param = 1; param <= paramCount; param++) {
71 System.out.print(" "+param+" ");
72 String paramTypeName = paramMetaData.getParameterTypeName(param);
73 System.out.println(paramTypeName);
77 ResultSet rs=null;
78 selStmt.setInt(2,2);
79 selStmt.setShort(1,(short)3);
80 selStmt.setByte(3,(byte)4);
81 rs=selStmt.executeQuery();
82 while(rs.next())
84 System.out.println("Tuple value is " + rs.getInt(1) + " "+
85 rs.getShort(2) + " "+
86 rs.getByte(3) + " "+
87 rs.getLong(4) + " "+
88 rs.getFloat(5) + " "+
89 rs.getString(6) + " "+
90 rs.getDate(7) + " "+
91 rs.getTime(8) + " "+
92 rs.getTimestamp(9) + " "
96 rs.close();
97 con.commit();
98 cStmt.executeUpdate("Drop table T1;");
99 con.close();
100 }catch(Exception e) {
101 System.out.println("Exception in Test: "+e);
102 e.printStackTrace();