You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sis.apache.org by "M. Le Bihan (JIRA)" <ji...@apache.org> on 2014/10/30 06:39:33 UTC

[jira] [Commented] (SIS-184) DBase 3 - JDBC : Simple WHERE CLAUSE and Integer, Double field support

    [ https://issues.apache.org/jira/browse/SIS-184?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14189666#comment-14189666 ] 

M. Le Bihan commented on SIS-184:
---------------------------------

The first part of this JIRA is done :
_ResultSet.getString(), getShort(), getInt(), getLong(), getFloat(), getDouble(), getBigDecimal()_ and _getDate()_ are working, and some improvments has been made in closing Connections, Statements and ResultSet (especially : log warnings if a developper closes a connection without having closed all his statements before).
Among these changes, the _CodePage_ has been changed to _Charset_, ...but we aren't at the end of our troubles : DBase 3 declares an UTF-8 encoding as "cp1252"... I'll try to check if I can find a workaround.

Among them too, In the code I will sent as soon as I will have my commit access available, there is one I need to mention :
The implementations of _Connection_, _Statement_, _ResultSet_, that I am doing, aren't throwing _SQLException_ in their methods, but always a subclass of _SQLException_ dedicated to the exact problem that is happening. Because the _Connection_, _Statement_, _ResultSet_ interfaces still declare _SQLException_, there are no changes for the developper at end. But it makes a lot of changes for me in testing ability : I can check something against the apparition of a specific exception (a specific trouble) rather than against a global exception, and it improves accuracy. The second reason of this change, is to offer more useful informations in each exception depending on the nature of the trouble they are reporting. And the third reason is to allow us later (if we have the chance too) to implement a JPA access to our DBF, which will cause us to change all the exceptions : Persistence exceptions are not the same than SQLException. The job will be easier if we can catch one exception of a specific kind from SQL and translate it to its Persistence kind.
----
The reading of _SignedBikeRoute_4326_clipped.dbf_ :
INFOS: Record 1 : [1299, 1199, 1182, 0, 0, 6033, 6033, 1000, STREETCL, 10360493, 1, 0360, 493, 36TH ST, , 36TH, ST, NW, 4934, 4998, 4919, 4999, 36th St, NW, Everett St, Connecticut Ave, 3, 3, 3, Local, 0, , , , , 0, 0, 0, 0, 0, 0,     0, , 0.027000000, 3, null, 0, 0, 1, existing bike route, 0.030000000, 1, Y, , Existing, 43.088149257]

oct. 30, 2014 6:11:20 AM org.apache.sis.internal.shapefile.jdbc.DBFResultSetTest readAllRecords
INFOS: Record 2 : [1715, 5006, 5035, 0, 0, 7911, 7911, 1000, STREETCL, 19126020, 1, 9126, 020, WASHINGTON CIR, , WASHINGTON, CIR, NW, 0, 0, 1, 7, Washington Cir, NW, 23rd St (N), Pennsylvania Ave (W), 2, 2, 2, Principal Arterial, 1, , , , , 19267, 2000, 0, 0, 0, 0,     1, In Bound, 0.037000000, 1, 2000-11-01, 18461, 18461, 1, ADC rec route, 0.040000000, 1, N, , Proposed, 60.189882780]

oct. 30, 2014 6:11:20 AM org.apache.sis.internal.shapefile.jdbc.DBFResultSetTest readAllRecords
INFOS: Record 3 : [2184, 6212, 6205, 0, 0, 10194, 10194, 1000, STREETCL, 53191493, 5, 3191, 493, EAST CAPITOL ST, E, EAST CAPITOL, ST, , 4908, 4928, 4901, 4915, East Capitol St, BN, 49th St (E), Sycamore Rd, 49th Pl, 7, 7, 7, Principal Arterial, 0, , , , , 30000, 2000, 2, 3, 1, 0,     0, , 0.048000000, 1, 2001-11-01, 30000, 30000, 1, 1975 plan, 0.050000000, 1, N, , Proposed, 77.232031818]

oct. 30, 2014 6:11:20 AM org.apache.sis.internal.shapefile.jdbc.DBFResultSetTest readAllRecords
INFOS: Record 4 : [2558, 1661, 1638, 0, 0, 12488, 12488, 1000, STREETCL, 15960493, 1, 5960, 493, MASSACHUSETTS AVE, , MASSACHUSETTS, AVE, NW, 4926, 5050, 4919, 4999, Massachusetts Ave, NW, Yuma St (W), 50th St, 3, 3, 3, Principal Arterial, 0, , , , , 25146, 2000, 2, 2, 1, 1,     0, , 0.066000000, 1, 2001-11-01, 25146, 25146, 1, COG 95, 1975 plan, 0.070000000, 1, N, , Proposed, 106.53510141]

oct. 30, 2014 6:11:20 AM org.apache.sis.internal.shapefile.jdbc.DBFResultSetTest readAllRecords
INFOS: Record 5 : [2600, 1197, 1182, 0, 0, 12706, 12706, 1000, STREETCL, 12515493, 1, 2515, 493, CONNECTICUT AVE, , CONNECTICUT, AVE, NW, 4912, 4920, 4903, 4919, Connecticut Ave, NW, Everett St, 36th St, 3, 3, 3, Principal Arterial, 1, , , , , 37000, 2000, 0, 0, 0, 0,     0, , 0.024000000, 1, 2001-11-01, 37000, 37000, 0, COG 95, 0.020000000, 0, Y, , Existing, 38.972946445]

> DBase 3 - JDBC : Simple WHERE CLAUSE and Integer, Double field support
> ----------------------------------------------------------------------
>
>                 Key: SIS-184
>                 URL: https://issues.apache.org/jira/browse/SIS-184
>             Project: Spatial Information Systems
>          Issue Type: Improvement
>          Components: Features, Storage
>    Affects Versions: 0.5
>            Reporter: M. Le Bihan
>            Priority: Minor
>
> Following the SIS-180 (select * from DBF) this improvment will add the ability to :
> * Obtain field values from Integer and Double fields.
> * Add a simple WHERE clause with = , >, <, >=, <=, <> operators.
> Relational operators (AND, OR) _might be_ implemented too, depending on the ability of parsing the query easily or not. Else, this feature will come in another JIRA.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)