Menu

mdbtools is being ported to java

2004-05-02
2013-05-01
<< < 1 2 (Page 2 of 2)
  • James Stansell

    James Stansell - 2004-10-14

    I have uploaded patch 1046883. It provides column names for queries like "select table1.column1, table1.column2 from table1".

    Additional changes are needed to allow "select column1 from table1" (unqualified columns) to work.

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-14

    patch's 1046857 & 1046883 have been merged and commited
    Thanks again James

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-14

    added code to support: select mycolumn from mytable

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-14

    the latest squirrel sql client tries to execute: select tbl.* from table tbl  jdbc2 will need to support aliasing in order for it to work.  however, the original jdbc driver does still work with squirrel

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-14

    the latest iSQL-Viewer(isql.sourceforge.net) is now working for executing sql.

     
  • James Stansell

    James Stansell - 2004-10-17

    It seems that bug #690867 is also present in the java port.  Do you think that patch #1002180 might solve this problem?

     
  • James Stansell

    James Stansell - 2004-10-17

    Yet another JDBC client to try out:
    http://sourceforge.net/projects/basicquery/

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-17

    patch #1002180 is a change to core, right now the core is a straight port of 0.5, however, 0.6 is due to be released soon which I'm sure fixes a number of things.  I don't have a test case for this problem :(  so i'll need your help.  Is this patch applied in current cvs of the c code?  if not why not?  can we get it to be applied?  once it is (or now if it's already there) then when 0.6 core is ported to java we can inherit the fix.  I'm REALLY trying to be a port not a fork :)

    Once 0.6 is 'official' i'm planning on porting it to java to use in place of 0.5

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-17

    basicquery seems to be VERY basic,however, it works!  all it needed was a few more jdbc methods to be implemented which I just checked in.

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-17

    sqladmin works for executing queries, but the schema browser doesn't work :(  sqladmin gives up since DatabaseMetaData.getSchemas is not implemented

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-17
     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-17

    adit works (http://adit.sourceforge.net/)

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-17

    pkilite works (http://pklite.sourceforge.net/installation.php) for query execution, schema browser fails due to
    MDBConnection.getCatalog not implemented

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-17

    we now have quite a few different clients working :)

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-17

    I just checked in changes that properly support prepared statements.

    ie: when using prepared statements
    the sql is only parsed once
    sql like: select * from a where id = ? now works

     
  • James Stansell

    James Stansell - 2004-10-18

    Great progress with all the various clients!  We're going to need a wiki page pretty soon to keep an up-to-date status.  :-)

    Regarding patch #1002180, I believe it was the inspiration for the Aug. 4th check-in to core.  I'm not set up yet to test against the C version, but I'll upload a test file that doesn't work with the java libmdb.  I'll go ahead a create a new bug report.

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-18

    It looks current cvs (c side) has added support for database writes (yeah!), when this is ported to the java side then it will be possible to get inserts / updates / deletes(? is that there) to work

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-19

    Ever wanted to use an .mdb file that was not on the local filesystem well now you can!

    uses:
      a client uploads an mdb file to a servlet who then extracts the data.  once extracted the mdb file is not needed so why write to disk?

      a client / server can be writen to proxy all mdb reads across a network

      cache the database so it's not opened read closed all the time

    others?

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-10-19

    To use a database coming from somewhere other than a file:

    1. implement mdbtools.publicapi.RandomAccess

    2. create an instance of an object that implements mdbtools.publicapi.RandomAccess.
    2.a for an in memory database you can use: mdbtools.examples.MemoryRandomAccess

    3. get a jdbc connection:

    byte[] ba;
    // populate ba with the bytes of the mdb file
    mdbtools.publicapi.RandomAccess ra = new
      mdbtools.examples.MemoryRandomAccess(ba);
    java.util.Properties p = new java.util.Properties();
    p.put("RandomAccess",ra);
    conn = DriverManager.getConnection("jdbc:mdbtools:",p);

    4. from here on simply use the jdbc api

    :)

     
  • Calvin R. Smith

    Calvin R. Smith - 2004-12-31

    I checked in my latest changes,
    broke out aggregate and non aggregate functions
    new functions: concat, sum

     
  • Igor Lucas

    Igor Lucas - 2005-02-21

    hi! since your last message i don't have news about mdb tools for java. i'm very interested in that write/delete operations and i'd like to know if you have an ideia about when this update will be avaliable.

     
  • Calvin R. Smith

    Calvin R. Smith - 2005-02-22

    Igor,
      My current thinking is to build the libmdb java code from the C code which will keep the two in sync.  Currently I've got mdb-ver to compile for either C or Java, however, I'm putting in way too much time right now with work and school to work on this project much right now, in fact probably not till may when school is out again.  Which is actually when I started the 0.5 port a full year ago!
      If you really wish to help I can get you setup with what I have and let you have a go at it :)

     
  • javi

    javi - 2005-09-06

    Hi!
    I found a couple of problems with j2se1.3, in this version the interface Savepoint does not exist in java.sql (but as long as I dont need to perform rollbacks its ok for my application).The other problem is that in j2se1.3 the method Calendar.setTimeInMillis(long t) is "protected" so I think that a solution could be using instead "setTime(new java.util.Date(t))" in mdbtools.libmdb.Data
    I hope this helps.
    Great work!!

     
  • javi

    javi - 2005-09-06

    Hi again!!
    Now I have a different problem which only occurs with some *.mdb files (I have been able to open and read others).This is the stack
    java.lang.RuntimeException: offset 29505589248 is beyond EOF
            at mdbtools.libmdb.file._mdb_read_pg(file.java:96)
            at mdbtools.libmdb.file.mdb_read_alt_pg(file.java:196)
            at mdbtools.libmdb.Table.mdb_read_table(Table.java:36)
            at mdbtools.libmdb.Catalog.mdb_read_catalog(Catalog.java:31)
            at mdbtools.jdbc.Driver.connect(Driver.java:37)
            at java.sql.DriverManager.getConnection(DriverManager.java:543)
            at java.sql.DriverManager.getConnection(DriverManager.java:216)
            at javi.pruebas.PruebaAccessMdbTools.main(PruebaAccessMdbTools.java:19)

    Any clues?
    Thank you!!

     
<< < 1 2 (Page 2 of 2)