Herramientas de usuario

Herramientas del sitio


es:manual:items:generativos:siette.util.corpus.databasetable

siette.util.corpus.DatabaseTable

Es una clase heredera de siette.util.corpus.Table que sirve para manejar tablas procedentes de bases de datos por lo que contiene todos los métodos que ya se han descrito y algunos más. En esta página solo se hace referencia a estos nuevos métodos.

Constructores

public DatabaseTable(int dbms, String host, int port, String user, String schema, String passwd, String tableName, String charSet, boolean filterHTML)
public DatabaseTable(int dbms, String host, String user, String schema, String passwd)
public DatabaseTable(String propFile)
public DatabaseTable(DatabaseTable table)
public DatabaseTable()

Estos métodos contruyen un objeto de la clase inicializando los parámetros de conexión a la base de datos, mediante los siguientes parámetros:

Parámetro Descripción Valor por defecto
dbms Sistema gestor de base de datos. Puede tomar tres valores, BaseDatos.SGBD_POSTGRES, BaseDatos.SGBD_MYSQL o BaseDatos.SGBD_ORACLE
host Direccion ip, numérica o simbólica de la base de datos
port Puerto de conexión, si no se especifica, se toma por defecto el valor por defecto del puerto segun el sistema de gestión de la base de datos. 5432 (postgres); 3306 (mysql); 1521 (oracle)
schema Dependiendo del sistema de base de datos puede tener distintos significados, por ejemplo en Oracle es el SID
user Nombre del usuario que se conecta a la base de datos
passwd Contraseña del usuario
tableName Nombre por defecto de la tabla que se va a usar. Pueden usarse tanto tablas como vistas
charSet Codificación de caracteres. UTF-8
filterHTML Indica a Siette que el fichero contiene caracteres especiales y que al presentarlos debe convertirlos en entidades HTML. true
propFile Direccion relativa del fichero que contiene los datos de conexión

El fichero de propiedades tiene la la estructura de un fichero de java.util.Properties con los siguientes campos (se muestra un ejemplo):

 dbms=postgres
 ip=192.168.169.140
 puerto=5432
 usuario=dbpedia
 sid=dbpedia
 clave=******

setDatabase

public void setDatabase(int dbms, String host, int port, String user, String schema, String passwd)
public void setDatabase(int dbms, String host, String user, String schema, String passwd)
public void setDatabase(String propFile)
public void setDatabase(Properties prop)
public void setDBMS(String dbms)
public void setHost(String host)
public void setPort(String port)
public void setSchema(String schema)
public void setUser(String user)
public void setPassword(String passwd)

Cuando se crea solo el objeto usando el constructor sin argumento, se usa un conjunto de métodos para asignar valores a los parámetros de conexión y a los atributos de clase. El significado de los parámetros es el mismo que se explica en la sección de constructores

setTableName, setWhere, setKey

public void setTableName(String name, String key, String where)
public void setTableName(String name)
public void addWhere(String cond)
public void setKey(String key)

Establece el nombre de la tabla sobre la que se hará la consulta, la condición o parte WHERE de la sentencia SQL y la clave principal de la tabla, necesaria para poder descartar los registros con la opción setExclusive

query

public Table query(String query)

Lanza una consulta SQL (contenida en el parámetro query) sobre la base de datos, y construye un objeto de la clase siette.util.corpus.Table a partir de él se aplican los métodos de esta clase.

La diferencia entre las consultas realizadas mediante métodos selectTable, selectSet y selectAll de la clase Table y de la clase DatabaseTable es que en el primer caso se carga en memoria la tabla entera, miesntras que en el segundo todas las operaciones se realizan mediante llamadas a la base de datos.

Tambien puede obtenerse una tabla a traves de las funciones selectTable que se reimplementan en esta subclase.

closeDatabase

public void closeDatabase()

Cierra la conexión a la base de datos. En general no es necesario utilizar esta llamada, salvo en caso de que se produzca alguna excepción, puesto que cada consulta se cierra al terminar.

es/manual/items/generativos/siette.util.corpus.databasetable.txt · Última modificación: 2021/05/27 16:17 por root

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki