13 Aralık 2018 Perşembe

JDBC Connection Arayüzü

Giriş
Şu satırı dahil ederiz
import java.sql.Connection;
Açıklaması şöyle.
A JDBC database Connection Object is just a cursor to a database connection that is owned and managed by the database.

If the application exits without closing the connection properly, the database connection will be left unclosed (including all the running statements). This may result in database resources being wasted (until a timeout happens on the database side) or even memory leak. It is known as resource hogging and it is common in JDBC.
constructor
Bu sınıf using ile kullanılmalı. DriverManager nesnesini kullanarak yaratmak için şöyle yaparız.
try (Connection con = DriverManager.getConnection("...")) {
  ...
}
DataSource nesnesini kullanarak yaratmak için şöyle yaparız.
DataSource ds = ...;
Connection connection = ds.getConnection();
close metodu
Şöyle yaparız.
conn.close();
createStatement metodu
Şöyle yaparız. Böylece bir sql cümlesi - örneğin select - çalıştırabiliriz.
Statement stmt = conn.createStatement();
createStatement metodu - int resultSetType, int resultSetConcurrency
Şöyle yaparız.
Statement sqlStatement = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
 ResultSet.CONCUR_READ_ONLY);
commit metodu
AutoCommit özelliği false ise çağrılabilir. Şöyle yaparız.
conn.commit();
getAutoCommit metodu
Şöyle yaparız.
boolean b = conn.getAutoCommit();
getMetadata metodu
DatabaseMetaData nesnesi döndürür.

rollback metodu
Açıklaması şöyle
Undoes all changes made in the current transaction and releases any database locks currently held by this Connection object. This method should be used only when auto-commit mode has been disabled.
Şöyle yaparız.
try{
  conn.setAutoCommit(false);
  Statement st= conn.createStatement();

  // valid statement
  String statement1 = ....;
  st.executeUpdate(statement1)

  // invalid statement that will cause an error
  String statement2 = ....;
  st.executeUpdate(statement2)

  conn.commit ();
}catch(SQLException e){
  // there was an error
  conn.rollback();
}
setAutoCommit metodu
Şöyle yaparız
conn.setAutoCommit(false);
setCatalog metodu
Açıklaması şöyle
Initial Database for Connection
If the database is not specified, the connection is made with no default database. In this case, either call the setCatalog() method on the Connection instance, or fully specify table names using the database name (that is, SELECT dbname.tablename.colname FROM dbname.tablename...) in your SQL. Opening a connection without specifying the database to use is generally only useful when building tools that work with multiple databases, such as GUI database managers.
Note: Always use the Connection.setCatalog() method to specify the desired database in JDBC applications, rather than the USE database statement.
Veritabanına bağlanırken veritabanı ismi verilmeyebilir. Daha sonra veritabanını belirtmek istersek bu metodu kullanırız.

setSchema metodu
Örnek ver

unwrap metodu
Şöyle yaparız.
OracleConnection oraCon = connection.unwrap(oracle.jdbc.OracleConection.class);




Hiç yorum yok:

Yorum Gönder