Skip to main content

  | मौसम…

411 समाचार
Public archive edition · Attributed source reporting with original dates · AI drafts are excluded

411 REFERENCE · Wikibooks

Java Programming/Database Programming

Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.

<noinclude> __NOTOC__ Java uses JDBC, an API that defines how a client may access a database. Its drivers may be installed first. http://www.cloudera.com/documentation/archive/cdh/4-x/4-7-0/CDH4-Installation-Guide/cdh4ig_topic_13_7.htmlhttp://www.oracle.com/technetwork/database/features/jdbc/index-091264.html Connecting to Microsoft Access databases The following is used to open an ODBC connection to an Access database. Note that the username (and password, if applicable) are given in the DSN rather than the getConnection call. This is a MS Windows-only example, due to the requirement for the Microsoft Access Driver. Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String path = "C:/example.mdb"; String dsn = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + path + ";UID=admin"; accessConn = DriverManager.getConnection(dsn, "", ""); Connecting to MySQL try { Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/MySite?user=MyAccount&password=MyPassword"); conn.close(); } catch(SQLException e) { e.printStackTrace(); } Connecting to Oracle Database This script returns the database size: import java.sql.*; import java.io.*; import oracle.jdbc.*; import oracle.sql.*; public class OracleDatabase { public static void main(String[] args) { try { DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:MyDatabase", "MyAccount", "MyPassword"); conn.setAutoCommit(true); String sql = "SELECT sum(bytes) from dba_segments;"; Statement stmt = conn.createStatement(); stmt.execute(sql); stmt.close(); conn.close(); } catch(SQLException e) { e.printStackTrace(); } } } Connecting to PostgreSQL try { Class.forName("org.postgresql.Driver"); Connection conn = DriverManager.getConnection("jdbc:postgresql:MyDatabase", "MyAccount", "MyPassword"); conn.close(); } catch(SQLException e) { e.printStackTrace(); } Known errors package oracle.jdbc does not exist If you have Oracle Database on your PC, just add to the classpath its following fileshttp://docs.oracle.com/database/121/IMURG/ch_appdev.htm#IMURG11551: C:\oracle12\app\oracle\product\12.1.0\dbhome_1\jdbc\lib\ojdbc7.jar C:\oracle12\app\oracle\product\12.1.0\dbhome_1\sqlj\lib\runtime12.jar Otherwise, ojdbc7.jar can be downloaded from http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html, and add it to the compilation. Eg: javac MyClass.java -classpath ojdbc7.jar ORA-28009: connection as SYS should be as SYSDBA or SYSOPER Just add " as sysdba" after your Oracle account name, eg: Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:MyDatabase", "MyAccount as sysdba", References