Java/Database SQL JDBC/Database Type vs Java Type

Материал из Java эксперт
Перейти к: навигация, поиск

Get Available Sql Types In A Database

   <source lang="java">

import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class Main {

 public static void main(String[] args) throws Exception {
   Connection conn = getMySqlConnection();
   System.out.println("Got Connection.");
   Statement st = conn.createStatement();
   st.executeUpdate("drop table survey;");
   st.executeUpdate("create table survey (id int,name varchar(30));");
   st.executeUpdate("insert into survey (id,name ) values (1,"nameValue")");
   ResultSet rs = null;
   DatabaseMetaData meta = conn.getMetaData();
   rs = meta.getTypeInfo();
   while (rs.next()) {
     // Get the database-specific type name
     String typeName = rs.getString("TYPE_NAME");
     // Get the java.sql.Types type to which this
     // database-specific type is mapped
     short dataType = rs.getShort("DATA_TYPE");
     // Get the name of the java.sql.Types value.
     System.out.println("type name="+typeName);
     System.out.println("dataType="+dataType);
     System.out.println("jdbcType="+dataType);
   }   
   st.close();
   conn.close();
 }
 private static Connection getHSQLConnection() throws Exception {
   Class.forName("org.hsqldb.jdbcDriver");
   System.out.println("Driver Loaded.");
   String url = "jdbc:hsqldb:data/tutorial";
   return DriverManager.getConnection(url, "sa", "");
 }
 public static Connection getMySqlConnection() throws Exception {
   String driver = "org.gjt.mm.mysql.Driver";
   String url = "jdbc:mysql://localhost/demo2s";
   String username = "oost";
   String password = "oost";
   Class.forName(driver);
   Connection conn = DriverManager.getConnection(url, username, password);
   return conn;
 }
 public static Connection getOracleConnection() throws Exception {
   String driver = "oracle.jdbc.driver.OracleDriver";
   String url = "jdbc:oracle:thin:@localhost:1521:caspian";
   String username = "mp";
   String password = "mp2";
   Class.forName(driver); // load Oracle driver
   Connection conn = DriverManager.getConnection(url, username, password);
   return conn;
 }

}

      </source>
   
  
 
  



Get Available Table Types

   <source lang="java">

import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class Main {

 public static void main(String[] args) throws Exception {
   Connection conn = getHSQLConnection();
   System.out.println("Got Connection.");
   Statement st = conn.createStatement();
   st.executeUpdate("create table survey (id int,name varchar);");
   st.executeUpdate("insert into survey (id,name ) values (1,"nameValue")");
   ResultSet rs = null;
   DatabaseMetaData meta = conn.getMetaData();
   rs = meta.getTableTypes();
   while (rs.next()) {
     String tableType = rs.getString(1);
     System.out.println("tableType=" + tableType);
   }
   st.close();
   conn.close();
 }
 private static Connection getHSQLConnection() throws Exception {
   Class.forName("org.hsqldb.jdbcDriver");
   System.out.println("Driver Loaded.");
   String url = "jdbc:hsqldb:data/tutorial";
   return DriverManager.getConnection(url, "sa", "");
 }
 public static Connection getMySqlConnection() throws Exception {
   String driver = "org.gjt.mm.mysql.Driver";
   String url = "jdbc:mysql://localhost/octopus";
   String username = "root";
   String password = "root";
   Class.forName(driver); // load MySQL driver
   Connection conn = DriverManager.getConnection(url, username, password);
   return conn;
 }
 public static Connection getOracleConnection() throws Exception {
   String driver = "oracle.jdbc.driver.OracleDriver";
   String url = "jdbc:oracle:thin:@localhost:1521:caspian";
   String username = "mp";
   String password = "mp2";
   Class.forName(driver); // load Oracle driver
   Connection conn = DriverManager.getConnection(url, username, password);
   return conn;
 }

}


      </source>
   
  
 
  



Sql DateTime

   <source lang="java">

public class SqlDateTime {

 public static void main(String[] args) {
   java.util.Date javaDate = new java.util.Date();
   long javaTime = javaDate.getTime();
   System.out.println("The Java Date is: " + javaDate.toString());
   java.sql.Date sqlDate = new java.sql.Date(javaTime);
   System.out.println("The SQL DATE is: " + sqlDate.toString());
   java.sql.Time sqlTime = new java.sql.Time(javaTime);
   System.out.println("The SQL TIME is: " + sqlTime.toString());
   java.sql.Timestamp sqlTimestamp = new java.sql.Timestamp(javaTime);
   System.out.println("The SQL TIMESTAMP is: " + sqlTimestamp.toString());
 }

}

</source>
   
  
 
  



Standard SQL Data Types with Their Java Equivalents

   <source lang="java">

SQL type Java Type Description BINARY byte[] Byte array. Used for binary large objects. BIT boolean Boolean 0 / 1 value CHAR String Fixed-length character string. DATETIME java.sql.Date Date and Time as: yyyy-mm-dd hh:mm:ss DECIMAL java.math.BigDecimal Arbitrary-precision signed decimal numbers. FLOAT double Floating-point number, mapped to double INTEGER int 32-bit integer values LONGVARBINARY byte[] Variable-length character string. LONGVARCHAR String Variable-length character string. NCHAR String National Character Unicode fixed-length character string NUMERIC java.math.BigDecimal Arbitrary-precision signed decimal numbers. NTEXT String Large string variables. NVARCHAR String National Character Unicode variable-length character string REAL float Floating-point number, mapped to float SMALLINT short 16-bit integer values TIME java.sql.Time Thin wrapper around java.util.Date TIMESTAMP java.sql.Timestamp Composite of a java.util.Date and a separate nanosecond value VARBINARY byte[] Byte array VARCHAR String Variable-length character string.

</source>