Creating an Oracle Table to Store Java Types

This example creates an Oracle table called oracle_all_table to store Java types.

Oracle does not support the boolean Java type directly. A typical workaround is to use the Oracle CHAR(1) type and convert the boolean value to and from a string. Typically, false is converted to F and true is converted to T.

try { Statement stmt = connection.createStatement(); // Create a VARRAY type; see Creating a VARRAY Type in an Oracle Database stmt.execute("CREATE TYPE number_varray AS VARRAY(10) OF NUMBER(12, 2)"); // Create an OBJECT type; Creating an OBJECT Type in an Oracle Database stmt.execute ("CREATE TYPE my_object AS OBJECT(col_string2 VARCHAR(30), col_int2 INTEGER)"); // Note that Oracle database only allows at most one column of LONG type in a table. // Column Name Oracle Type Java Type String sql = "CREATE TABLE oracle_all_table(" + "col_short SMALLINT, " // short + "col_int INTEGER, " // int + "col_float REAL, " // float; can also be NUMBER + "col_double DOUBLE PRECISION, " // double; can also be FLOAT or NUMBER + "col_bigdecimal DECIMAL(13,0), " // BigDecimal + "col_string VARCHAR2(254), " // String; can also be CHAR(n) + "col_characterstream LONG, " // CharacterStream or AsciiStream + "col_bytes RAW(2000), " // byte[]; can also be LONG RAW(n) + "col_binarystream RAW(2000), " // BinaryStream; can also be LONG RAW(n) + "col_timestamp DATE, " // Timestamp + "col_clob CLOB, " // Clob + "col_blob BLOB, " // Blob; can also be BFILE + "col_array number_varray, " // oracle.sql.ARRAY + "col_object my_object)"; // oracle.sql.OBJECT stmt.executeUpdate(sql); } catch (SQLException e) { }

Post a comment

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image. Ignore spaces and be careful about upper and lower case.