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

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

SQL- Structured Query Language  SQL é uma linguagem de comandos para interagir com uma BD relacional (não é case-sensitive).  A linguagem Java permite.

Apresentações semelhantes


Apresentação em tema: "SQL- Structured Query Language  SQL é uma linguagem de comandos para interagir com uma BD relacional (não é case-sensitive).  A linguagem Java permite."— Transcrição da apresentação:

1 SQL- Structured Query Language  SQL é uma linguagem de comandos para interagir com uma BD relacional (não é case-sensitive).  A linguagem Java permite a utilização de código SQL nos programas. (Utilizando o package java.sql;)  Exemplos:  Criação de uma tabela CREATE TABLE Products( Product_Code CHAR(11), Description CHAR(40), Unit_Price Decimal(10,2) )  Inserir registos na tabela INSERT INTO Products VALUES (‘345_67’, secador, 29.95)  Remover tabela DROP TABLE Products

2 Consultas à BD (Queries)  Qual o nome e endereço de todos os clientes?  Qual o nome de todos os clientes com encomendas não pagas? O Comando SELECT Exemplos: SELECT * FROM Clientes SELECT Nome, Cidade FROM Clientes ORDER BY Nome ASC SELECT Cod_Prod FROM Produtos WHERE preco<100 SELECT Cod_Prod, Preço FROM Produtos WHERE Cod_Prod LIKE ‘_99%’ SELECT * FROM Clientes WHERE Cidade<>‘Lisboa’ AND Pais=‘Portugal’ SELECT Clientes.Nome, Clientes.Cidade FROM Produtos, Clientes, Encomendas WHERE Produto.Cod_Prod=Item.Cod_Prod AND Item.Num_Enc= Encomendas.Num_Enc AND Encomendas.Cod_Cl= Clientes.Cod_Cl O comando INNER JOIN utiliza-se quando é necessário juntar dados de diversas tabelas numa única perspectiva (“view”). SELECT * FROM Items INNER JOIN Produtos ON Items.CodProd= Produtos.CodProd ORDER BY CodProd DESC

3 Actualizar e Apagar Informação  Comando DELETE DELETE FROM Clientes WHERE Cidade=‘Porto’  Comando UPDATE UPDATE Item SET Quantidade=Quantidade+1 WHERE Num_Encomenda=‘132’

4 Ligação a uma BD Access em Java import java.sql; contem classes e interfaces para manipular BD Relacionais private Connection connection; um objecto do tipo Connection gere a ligação entre o prog e a BD O url permite localizar a BD identificando o protocolo: subprotocolo: basedados odbc indica que o programa usa jdbc para se ligar a uma fonte de dados Microsoft ODBC (tecnologia que permite gerir o acesso a BD em Windows). J2SDK vem com um driver JdbcOdbcDriver do package sun.jdbc.odbc que permite o acesso a fontes de dados ODBC Para carregar as definições da classe do driver da BD Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”); Para ligar a uma Base de Dados MS - Access String jsp_path = getServletContext().getRealPath("/"); String pathname=jsp_path.concat("/jdbc/alunos.mdb"); java.sql.Connection cn = DriverManager.getConnection ("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + pathname); Outro tipo de ligação à BD java.sql.Connection cn =DriverManager.getConnection(url, username, password); Para mais informação sobre JDBC drivers http://java.sun.com/products/jdbc/

5 list_and_add.jsp <% Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String jsp_path = getServletContext().getRealPath("/"); String pathname=jsp_path.concat("/jdbc/alunos.mdb"); Connection cn = DriverManager.getConnection ("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + pathname); Statement stm=cn.createStatement(); ResultSet rs=stm.executeQuery("Select * from alunos"); %> Listagem de alunos Numero Nome <% while (rs.next()) { long ID = rs.getLong("ID"); out.println(" "); out.print(rs.getLong("numero")); out.print(" "); out.print(rs.getString("nome")); out.println(" "); } rs.close(); cn.close(); %> Clique aqui para adicionar um novo aluno

6 view_details.jsp <% String ID = request.getParameter("id"); Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String jsp_path = getServletContext().getRealPath("/"); String pathname=jsp_path.concat("/jdbc/alunos.mdb"); Connection cn = DriverManager.getConnection( "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + pathname); Statement stm=cn.createStatement(); ResultSet rs=stm.executeQuery("SELECT * FROM alunos WHERE id=" + ID); rs.next(); %> Ver Detalhe de um aluno Número: "); out.print(rs.getLong("numero")); out.print(" "); out.println(" Número: "); out.print(rs.getString("nome")); out.print(" "); rs.close(); cn.close(); %> ver todos

7 Demo CGI Introduza os dados do aluno Numero: Nome: Cancel form_aluno.html

8 add_aluno.jsp <% String num = request.getParameter("numero"); String nome = request.getParameter("nome"); Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String jsp_path = getServletContext().getRealPath("/"); String pathname=jsp_path.concat("/jdbc/alunos.mdb"); Connection cn = DriverManager.getConnection ("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + pathname); Statement stm=cn.createStatement(); stm.executeUpdate("INSERT INTO Alunos (numero, nome) VALUES (" + num + ", '" + nome + "')"); cn.close(); response.sendRedirect("list_add.jsp"); %>


Carregar ppt "SQL- Structured Query Language  SQL é uma linguagem de comandos para interagir com uma BD relacional (não é case-sensitive).  A linguagem Java permite."

Apresentações semelhantes


Anúncios Google