jueves, 3 de noviembre de 2016

LA CLASE STATEMENT












DOCENTE         :     Ing. Marco Aurelio Porro Chulli.
ASIGNATURA    :    Desarrollo de Software I.
INTEGRANTES :    Vicente Wualdir Alberca Rojas.
                                 Wilder Fuentes Araujo.

AÑO                   :     2016




TEMA: STATEMENT

Tema: Statement
1.    Contenido
*        Definición
ü  Se usa para ejecutar sentencias SQL
ü  Encapsula las instrucciones SQL a la BD

Actualmente hay tres tipos de objetos Statement, todos los cuales actúan como contenedores para la ejecución de sentencias en una conexión dada: Statement,PreparedStatement que hereda de Statement y CallableStatement que hereda de PreparedStatement. Estas estàn especializadas para enviar tipos particulares de sentencias SQL, Un objeto Statement se usa para ejecutar una sentencia SQL simple sin parámetros. Un objeto PreparedStatement se usa para ejecutar sentencias SQL precompiladas con o sin parámetros IN; y un objeto CallableStatement se usa para ejecutar un procedimieno de base de datos almacenado.
Lleva asociada una conexión que sirvió como origen para su creación Se crea con el   método de la clase:
java.sql.Connection:
public Statement createStament() trows java.sql.SQLException;

*      Propiedades

La interfase Statement nos suministra tres métodos diferentes para ejecutar sentencias SQL, executeQuery, executeUpdate y execute. El método a usar está determinado por el producto de la sentencia SQL.

v  executeQuery(String sql)

        • Ejecución de consultas: SELECT
        • Devuelve un objeto ResultSet

v  executeUpdate(String sql)

         • Modificaciones en la BD: INSERT, UPDATE, DELETE
         • Devuelve el número de columnas afectadas



v  execute(String sql)

• Ejecución de instrucciones que pueden devolver varios conjuntos de resultados
 • Requiere usar luego getResultSet() o getUpdateCount() para recuperar los resultados, y getMoreResults() para ver los siguientes resultados.



v  ResultSet

Ø  Encapsula el conjunto de resultados
Ø  Para obtener el valor de cada campo hay que usar el método get("campo") correspondiente al tipo del valor SQL:


 • getInt                                 INTEGER
 • getLong                             BIG INT
 • getFloat                             REAL
 • getDouble                        FLOAT
 • getBignum                       DECIMAL
 • getBoolean                       BIT
 • getString                           VARCHAR
 • getString                           CHAR
 • getDate                              DATE
 • getTime                             TIME
 • getTimesstamp               TIME STAMP
 • getObject                        cualquier otro tipo

Ø  Para pasar al siguiente registro se usa el método next()

·         Devuelve false cuando no hay más registro




*      Ejemplo

import java.sql.*;
import java.util.Hashtable;

public class SQLconnection {
private String user;
private String password;
private String db;
private String host;
private String url;
private Connection conn = null;
private Statement stm;
private ResultSet rs;

public SQLconnection()
{

this.url = “jdbc:mysql://” + this.host + “/” + this.db;
}

public SQLconnection (String server, String usuario, String contraseña, String bd)
{

this.user = usuario;
this.password = contraseña;
this.db = bd;
this.host = server;
this.url = “jdbc:mysql://” + this.host + “/” + this.db;
}

public void connectar()
{

try {
Class.forName(“org.gjt.mm.mysql.Driver”);
conn = DriverManager.getConnection(url, user, password);
if (conn != null)
{

System.out.println(“Conexión a base de datos “+url+” … Ok”);
stm = conn.createStatement();
}
}

catch(SQLException ex) {
System.out.println(“Hubo un problema al intentar conectarse con la base de datos “+url);
}
catch(ClassNotFoundException ex) {
System.out.println(ex);
}
}

public String getDb() {
return db;
}

public void setDb(String db) {
this.db = db;
}

public String getHost() {
return host;
}

public void setHost(String host) {
this.host = host;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getUser() {
return user;
}

public void setUser(String user) {
this.user = user;
}

public ResultSet consultar(String tabla) throws SQLException
{

rs = stm.executeQuery(“SELECT * FROM ” + tabla);
return rs;
}

public String buscarNombre(String tabla, String nombre) throws SQLException
{

String name = null;
try{
rs = stm.executeQuery(“SELECT * FROM ” + tabla + ” WHERE nombre = ‘”+ nombre +”‘ LIMIT 1″);
rs.next();
name = rs.getString(2);
}catch(SQLException ex){System.out.println(ex);}
return name;
}

public void insertar(Hashtable usuario) 
{

try {
stm.execute(“INSERT INTO usuarios (nombre, contraseña) VALUES (‘” + usuario.get(“nombre”) + “‘,'” + usuario.get(“contraseña”) + “‘)”);
} catch (SQLException ex) {
System.out.println(ex);
}
}

public void actualizar(String tabla, Hashtable usuario, String nombre)
{

try {
stm.execute(“UPDATE ” + tabla + ” SET nombre='” + usuario.get(“nombre”) + “‘ WHERE nombre='” + nombre + “‘”);
} catch (SQLException ex) {
System.out.println(ex);
}
}

public void eliminar(String tabla, String nombre) 
{

try {
stm.execute(“DELETE FROM ” + tabla + ” WHERE nombre='” + nombre + “‘”);
} catch (SQLException ex) {
System.out.println(ex);
}
}
}



2. Resumen.
      Definición:
ü  Se usa para ejecutar sentencias SQL
ü  Encapsula las instrucciones SQL a la BD

Actualmente hay tres tipos de objetos Statement, todos los cuales actúan como contenedores para la ejecución de sentencias en una conexión dada: Statement,PreparedStatement que hereda de Statement y CallableStatement que hereda de PreparedStatement.
    Un objeto Statement se crea mediante el método
    java.sql.Connection:
   public Statement createStament() trows java.sql.SQLException;

    Propiedades:
La interface Statement nos suministra tres métodos diferentes para ejecutar sentencias SQL, executeQuery, executeUpdate y execute.

v  executeQuery(String sql)

        • Ejecución de consultas: SELECT
        • Devuelve un objeto ResultSet

v  executeUpdate(String sql)

         • Modificaciones en la BD: INSERT, UPDATE, DELETE
         • Devuelve el número de columnas afectadas

v  execute(String sql)

• Ejecución de instrucciones que pueden devolver varios conjuntos  de resultados.


3. Summary.
                      Definition:
ü  Used to execute SQL statements
ü  encapsulates SQL statements to the database

There are currently three types of Statement objects, all of which act as containers for the enforcement of judgments in a given connection: Statement, PreparedStatement inherits from Statement and CallableStatement inherits PreparedStatement
A Statement object is created using the method
    java.sql.Connection:

   Statement public createStament () trows     java.sql.SQLException;

properties:
The Statement interface provides us three different methods to execute SQL statements, executeQuery, executeUpdate and execute judgments.

 executeQuery (String sql)

        • Running queries: SELECT
        • Returns a ResultSet object

executeUpdate (String sql)

         • Changes in the database: INSERT, UPDATE, DELETE
         • Returns the number of columns affected

 execute (String sql)

• Execution of instructions that can return multiple result sets.





4. Recomendaciones.
                          
v  Un objeto Statement se debe crear mediante el método de Connection createStatement.

v  Asegurar que las variables incrementadas dentro de los bucles   son las correctas.




5. Conclusiones.
                          
ü La clase statement nos sirve para enviar sentencias a SQL .  Actualmente hay tres tipos de objetos Statement, todos los cuales actúan como contenedores para la ejecución de sentencias en una conexión dada: Statement, PreparedStatement que hereda de Statement y CallableStatement que hereda de PreparedStatement. 




6. Apreciación del Equipo

·         Como equipo este trabajo nos ha permitido conocer sobre el tema Statement. La clase statement permite enviar sentencias de java a SQL la Base de Datos.



7. Glosario de Términos



                          Statement .
                             permite enviar sentencias de java a SQL la Base de Datos.

                           Connection
                              Encargado de realizar conexión con la Base de Datos

                          Encapsula

 Java, como un lenguaje orientado a objetos, implementa la encapsulación. Este concepto consiste en la ocultación del estado o de los datos miembro de un objeto, de forma que sólo es posible modificar los mismos mediante los métodos definidos para dicho objeto.


SQL

 (lenguaje de consulta estructurada) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas.







AQUI LES DEJO EL LINK DE LA DIAPOSITIVA




8. Bibliografía o Linkografía

                        http://www.euskalnet.net/jaoprogramador/j2ee/JDBC/jdbc17.htm









    

                            
                           



                          






                              









1 comentario:

  1. Excelente trabajo. Gracias por su investigación y aporte. Ilustrar debidamente el tema.Saludos

    ResponderEliminar