A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

JDBC Java Database Connectivity docs/guide/jdbc/getstart/introTOC.doc.html.

Apresentações semelhantes


Apresentação em tema: "JDBC Java Database Connectivity docs/guide/jdbc/getstart/introTOC.doc.html."— Transcrição da apresentação:

1 JDBC Java Database Connectivity http://www.javasoft.com/products/jdbc/index.html http://www.javasoft.com/products/jdk/1.2/ docs/guide/jdbc/getstart/introTOC.doc.html

2 O que é JDBC Especificação para uso de base de dados em aplicações e applets JAVA; API para uso de drivers JDBC; API para criação de drivers JDBC; Baseado na X/Open SQL Call Level Interface (CLI) Compatível com ANSI SQL-92.

3 Fabricantes comprometidos com a JDBC Inprise IBM Informix Intersolv Oracle SAS Institute SCO Sybase Symantec Visigenic etc...

4 Arquitetura JDBC –Uma interface independente de SGDB “ambiente de acesso a SGDBs SQL genérico” Interface uniforme para diferentes fontes de dados. –O programador escreve uma interface para banco de dados, podendo acessar várias fontes diferentes sem mudança de código.

5 Arquitetura JDBC

6 Ponte JDBC / ODBC

7 JDBC API Registrando drivers JDBC: –Modo 1: Class.forName(“jdbc.odbc.JdbcOdbcDriver”); Class.forName(“j102.sql.IDSDriver”); Obs: NÃO funciona no IE, devendo ser mudado para: Class.forName(“jdbc.odbc.JdbcOdbcDriver”).newInstance(); Class.forName(“j102.sql.IDSDriver”).newInstance(); –Modo 2: Driver drv = new j102.sql.IDSDriver();

8 JDBC API Declarando uma URL –Sintaxe: jdbc: : –subprotocol:indica o tipo de SGBD desejado »odbc, oracle, etc –subname: especificação adicional dependente do protocolo (Ex: nome do datasource, usuário, senha, porta, etc...) –Sintaxe do subname (recomendada pela Javasoft) –jdbc: ://hostname:port/subsubname –Ex: jdbc:mysql://ppgia.pucpr.br:3333/databasename

9 JDBC API Estabelecendo uma Conexão –Modo 1 Connection con = DriverManager.getConnection(String url, String User, String Pass); Connection con = DriverManager.getConnection(String url); Connection con = DriverManager.getConnection(String url, Properties info); –Modo 2 Connection con = drv.getConnection(String url, String User, String Pass); Connection con = drv.getConnection(String url); Connection con = drv.getConnection(String url, Properties info);

10 JDBC API Executando instruções –Statement Executa uma instrução SQL fixa –PreparedStatement Executa uma instrução SQL com parâmetros –callableStatement Executa uma Stored Procedure

11 JDBC API Obtendo um objeto para execução –Statement: Statement stmt = con.createStatement(); –PreparedStatement PreparedStatement pstmt = con.prepareStatement(“INSERT INTO teste (name,id) VALUES (?, ?)”); –callableStatement callableStatement cstmt = con.prepareCall(“{call test_sp(?,?)}”;

12 Statement public int executeUpdate(String) –Executa um comando SQL que não produz uma tabela de resultados. Retorna o número de linhas afetadas, ou 0 se nenhum resultado for produzido stmt.executeUpdate(“CREATE TABLE test (name CHAR(25), id INT”); stmt.executeUpdate(“INSERT INTO test VALUES (´Brian´,’1)”);

13 Statement public ResultSet executeQuery(String) –executa uma instrução SQL que produz como resultado uma tabela stmt.executeQuery(“SELECT * FROM test”);

14 PreparedStatement public void setString(int,String); –Atribui o valor String ao parâmetro especificado pstmt.setString(1,”John”); public void setInt(int par,int val); –Atribui o valor val ao parâmetro par pstmt.setInt(2,1); public int executeUpdate(); public int executeQuery();

15 Retornando Dados ResultSet –Implementa uma tabela que contém o resultado obtido de uma consulta ResultSetMetaData –Implementa uma tabela que contém os meta- dados de um objeto ResultSet DatabaseMetaData –Implementa uma tabela que contém os meta- dados de uma conexão

16 Forma Geral Connection con = DriverManager.getConnection ( "jdbc:odbc:wombat", "login", "password"); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1"); while (rs.next( )) { int x = rs.getInt("a"); String s = rs.getString("b"); float f = rs.getFloat("c"); }

17 ResultSet - Exemplo abc ------------------------------ 12345Cupertino4.5 83472Redmond3.56 83492Boston0.02 SELECT a, b, c FROM Table1

18 ResultSet - Exemplo (cont.) java.sql.Statement stmt = con.createStatement(); ResultSet r = stmt.executeQuery("SELECT a, b, c FROM Table1"); while (r.next()) { // print the values for the current row. int i = r.getInt("a"); String s = r.getString("b"); float f = r.getFloat("c"); System.out.println("ROW = " + i + " " + s + " " + f); }


Carregar ppt "JDBC Java Database Connectivity docs/guide/jdbc/getstart/introTOC.doc.html."

Apresentações semelhantes


Anúncios Google