Article View: es.comp.lenguajes.java
Article #174Re: Es posible adicionar un registro al ResultSet sin que actualice la Base de Datos ???
From: luisfleon
Date: Thu, 21 Feb 2008 20:16
Date: Thu, 21 Feb 2008 20:16
87 lines
4393 bytes
4393 bytes
On 21 feb, 16:14, luisfl...@gmail.com wrote:
> On 19 feb, 07:14, Eduardo Yáñez Parareda
>
> <eduardo.yanezNOS...@NOSPAMgmail.com> wrote:
> > > Amigos .. deseo hacer una consulta ... Es posible adicionar un
> > > registro al ResultSet sin que actualice la Base de Datos ??? De ser
> > > posible, como se puede hacer eso ???
>
> > no creo, ¿pero qué sentido tiene?. Si quieres usar el ResultSet como lista de datos, lee el ResultSet, crea unos
> > objetos con la información leída, y los guardas en una estructura como un List, Map, etc..., y luego usas esa estructura
> > como quieras.
>
> Tienes razon, voy a revisar eso ...
Disculpa tendras posibilidad de revisar este caso y ver si me puedes
ayudar por favor ???
Saludos amigos, quiero hacerles una consulta para ver que me sugieren.
Estoy haciendo una ventana de consulta. Un JTable y JTextField. De
manera que al ir escribiendo en el JTextField, se deberia ir filtrando
la informacion consultada, actualizando el JTable en base a un
ResultSet. Cuando hago la prueba con una tabla de 12 registros
funciona a la perfeccion, el detalle es que cuando la prueba con una
tabla de 40 mil registros, se pone lentisimo. Me gustaria tener su
recomendaciones sobre lo que podria hacer al respecto ... Es correcto
lo que estoy haciendo ? Como podria mejorarlo ? .. Agradezco mucho sus
comentarios. Que utilizo es el siguiente:
// *** JDialgo JBuscar ***
public class JBuscar extends javax.swing.JDialog implements
TableModelListener {
private Connection conexion;
private ResultSet consulta;
private ResultSetTableModel tableModel;
// *** Constructor ***
public JBuscar() {
Class.forName("com.ibm.as400.access.AS400JDBCDrive r");
conexion=DriverManager.getConnection(url,usuarios, clave);
Statement sentencia=CONEXION.createStatement(ResultSet.TYPE_
SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE,
ResultSet.HOLD_CURSORS_OVER_COMMIT);
consulta=sentencia.executeQuery("SELECT CODIGOPAIS, DESCRIPCIONPAIS
FROM PAIS");
tableModel = new ResultSetTableModel(consulta);
initComponents();
}
// *** initComponents ***
private void initComponents() {
...
jTextField1 = new javax.swing.JTextField();
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new JTable(tableModel);
...
}
// *** Evento CaretUpdate del jTextField ***
private void jTextField1CaretUpdate(javax.swing.event.CaretEven t evt)
{
if (!this.jTextField1.getText().trim().equals("")) {
consulta = FrmPrincipal.getConexionPrincipal().Consulta("SELE CT
CODIGOPAIS, DESCRIPCIONPAIS FROM PAIS WHERE CODIGOPAIS + " LIKE '%" +
this.jTextField1.getText().trim().toUpperCase() + "%'");
} else {
consulta = FrmPrincipal.getConexionPrincipal().Consulta("SELE CT
CODIGOPAIS, DESCRIPCIONPAIS FROM PAIS");
}
tableModel = new ResultSetTableModel(consulta);
this.jTable1.setModel(tableModel);
}
}
//**************************
Technical Details
Message-ID:
<804f220a-c1ed-455d-b186-52d846bf5d8b@c33g2000hsd.googlegroups.com>Path:
arc1-ca.pugleaf.net!g2news1.google.com!postnews.google.com!c33g2000hsd.googlegroups.com!not-for-mailReferences:
<7496fc0a-6b20-4601-883a-d666728cb26b@h11g2000prf.googlegroups.com> <61vsdfF202v5qU1@mid.individual.net> <55b59889-f441-418a-b03f-aa499e0b40c1@28g2000hsw.googlegroups.com>Show Full Headers
Complete Article Headers
X-Google-Thread: 1116f3,141e5eaa44160295 X-Google-Attributes: gid1116f3,public,usenet X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!postnews.google.com!c33g2000hsd.googlegroups.com!not-for-mail From: luisfleon@gmail.com Newsgroups: es.comp.lenguajes.java Subject: Re: Es posible adicionar un registro al ResultSet sin que actualice la Base de Datos ??? Date: Thu, 21 Feb 2008 12:16:25 -0800 (PST) Organization: http://groups.google.com Lines: 87 Message-ID: <804f220a-c1ed-455d-b186-52d846bf5d8b@c33g2000hsd.googlegroups.com> References: <7496fc0a-6b20-4601-883a-d666728cb26b@h11g2000prf.googlegroups.com> <61vsdfF202v5qU1@mid.individual.net> <55b59889-f441-418a-b03f-aa499e0b40c1@28g2000hsw.googlegroups.com> NNTP-Posting-Host: 190.36.176.59 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1203624986 4360 127.0.0.1 (21 Feb 2008 20:16:26 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Thu, 21 Feb 2008 20:16:26 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: c33g2000hsd.googlegroups.com; posting-host=190.36.176.59; posting-account=AmiCwAoAAADEK0cySQlfJhInK7_rhwVO User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648),gzip(gfe),gzip(gfe)